`

linux基本命令

    博客分类:
  • java
阅读更多
vi 编辑文件
i 进入编辑模式
进行修改
Esc退出编辑模式

q! 不保存退出
wq! 强制保存退出

常用命令积累:
日志文件里面查找内容:grep -i "注册失败" stdout.log
查看日志文件里面某段时间的日志:cat stdout.log.20150811 | grep "08:"
这表示查看8月11日8点多的日志。




secureCrt上传下载文件:
http://blog.csdn.net/lioncode/article/details/7921525




按ESC键 跳到命令模式,然后:

vi 文件名   编辑文件
i 进入编辑模式
esc 退出编辑模式

:w   保存文件但不退出vi
:w file 将修改另外保存到file中,不退出vi
:w!   强制保存,不推出vi
:wq  保存文件并退出vi
:wq! 强制保存文件,并退出vi
q:  不保存文件,退出vi
:q! 不保存文件,强制退出vi
:e! 放弃所有修改,从上次保存文件开始再编辑




一.文件处理命令
1.查看目录下的内容:
ls -la /dir :-a显示所有文件,-l显示详细信息
ll /dir

2.查看目录或文件的属性
ll -d /dir :-d只显示目录信息
ll filename

3.切换目录
cd /  :切换到根目录
cd .. :回到上级目录

4.查看当前路径
pwd

5.创建空文件
touch filename

6.创建目录
mkdir dir
mkdir -p dir/dir/dir :创建多级目录

7.文件和目录复制
cp sourcefile todir :复制到指定目录,保持原文件名
cp file1 file2 todir :同时复制多个文件到指定目录下
cp sourcefile todir/newfile :复制到指定目录,并重命名文件
cp -R sourcedir todir :复制目录到指定目录下
cp sourcedir/* todir :复制目录下的文件到指定目录
cp -n sourcefile todir :如文件已经存在,则不覆盖
cp -f sourcefile todir :如文件已经存在,则强制覆盖

8.移动文件、重命名
mv file1 file2 :重命名file1为file2
mv file todir :将文件移动到指定目录
mv dir todir :将目录移动到指定目录
mv -n file todir :如有重复,则不覆盖
mv -f file todir :如有重复,则强制覆盖

9.文件和目录删除
rm -f file
rm -rf dir

10.显示文件内容相关
1)cat file:显示文件所有内容
2)more file:分页显示文件内容
下一页:空格
下一行:回车
退出  :q
3)head -20 file:显示文件前20行,默认是10行
4)tail -20 file:显示文件最后20行,默认是10行
tail -f file -n 100:动态显示文件内容,先显示最后100行内容,用于查看日志

11.软链接与硬连接
ln -s file/dir file/dir :软连接
ln file/dir file/dir :硬连接


二.权限管理命令
1.改变文件或目录权限
chmod 777 file/dir
chmod u+x file :赋予文件所有者执行权限
u:文件所有者
g:文件所属组
o:其它用户和组
+:赋予权限 -:去除权限
r:读权限   文件--可以查看  目录--可以列出目录内容
w:写权限   文件--可以修改  目录--可以在目录中创建、删除文件和目录
x:执行权限 文件--可以执行文件 目录--可以进入目录
注:对于目录,如有r权限,则必须有x权限。

2.改变文件或目录所有者和所属组
chown user file :将file的所有者修改为user
chgrp group file :将file的所属组修改为group
chown -R user.group dir :修改dir及其子目录的所有者和所属组

三.文件搜索命令
1.显示系统命令所在目录
which useradd

2.查找文件或目录
find dir -name filename:在目录下查找文件名为filename的文件
-name:文件名称,例如:find . -name "*.log"
-size:文件大小,以block为单位,1block=512k
-size +204800:大于100M
-size -204800:小于100M
-user:文件所有者
-ctime:按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-cmin:同上,分钟
-mtime:按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-mmin:同上,分钟
-atime:按文件访问时间来查找文件
-amin:同上,分钟
-type b/d/c/p/l/f :查是块设备、目录、字符设备、管道、符号链接、普通文件
-empty:查找在系统中为空的文件或者文件夹
-exec commond {} \;:将查找到的路径作为commond的参数,并执行,
例如:find . -name .svn -exec rm -rf {} \; 类似于:find . -name .svn | xargs rm -rf
find . -name "*.log" -exec cp '{}' ./dir ';' :将当前目录下的以.log结尾的文件拷贝到./dir下
类似于find . -name "*.log" | xargs -n1 -i cp {} ./dir
-n[num] : 执行命令时,一次提供几个参数,这里表示,每次传递给cp一个参数
-maxdepth:查找目录最大深度,默认是全部查找
例如:find -maxdepth 2 -name "*${filename}*" -exec cp {} $newfilename \;
-a:and
-o:or
例子:查询大于100M并且所有者为hanqf的文件并将其删除
find /etc -size +204800 -a -user hanqf -exec rm -rf {} \;
!:不等于,不包含,例如:find . ! -type d,查找所有类型不是目录的文件



3.从文件索引库中查找文件或目录
updatedb:更新索引,系统会自动定期执行
locate key:从索引库中查找名称包含key的文件和目录

4.在文件中搜索匹配关键字的行
grep key file:grep ^# file:显示所有行首是#的行
cat file | grep key
grep -v key file:查找不含key的行
grep key file -A 10:显示关键字行及其后面的10行
grep key file -B 10:显示关键字行及其前面的10行

四.帮助命令
1.获得帮助信息
man ls:查看ls的命令帮助
man services:查看配置文件services的帮助信息(/etc/services,配置文件都位于/etc下)
man passwd:查看命令,或者man 1 passwd
man 5 passwd:查看配置文件

2.获得命令的简单说明
makewhatis:建立索引数据库
whatis ls

五.压缩和解压缩命令
1.格式:.gz 只能压缩文件
gzip file ===》file.gz
gunzip file.gz ===》file
gunzip *.gz

2.格式:.tar 可以压缩文件和目录
tar -cvf file.tar file
-c:产生.tar文件
-v:显示详细信息
-f:指定压缩后的文件名
-z:打包同时压缩为.gz

tar -xvf file.tar
-x:解压.tar文件
-v:显示详细信息
-f:指定要解压的文件名
-z:解压缩.gz


tar -zcvf file.tar.gz file/dir
tar -zxvf file.tar.gz
tar -zxvf file.tar.gz -C todir
-C:解压到指定目录
tar -zcvf file_$(date +%F).tar.gz file
$(date +%Y.%m.%d-%H%M)

tar -ztf file.tar.gz:不解包,查看包中文件列表

tar -zcvf file.tar.gz dir1 dir2 dir3:压缩多个目录

3.格式:.zip 可以压缩文件和目录
zip file.zip file
zip -r dir.zip dir

unzip file.zip
unzip -o file.zip:解压后如果文件已经存在,则覆盖
unzip -n file.zip:解压后如果文件已经存在,则不覆盖

4.格式:.bz2 只能压缩文件
bzip2 -k file===>file.bz2
-k:压缩后保留原文件

bunzip2 -k file.bz2
-k:解压后保留原文件


六.网络通信命令
1.向已经登录系统的另一个用户发送即时消息
write user
Ctrl+D:退出

2.向所有登录用户发送广播消息
wall
Ctrl+D:退出

cat file | wall
wall < file

3.测试网络连通性
ping ip/domain
ping 192.168.36.49 -c 3 :-c 测试次数
ping 192.168.36.49 -c 3 -s 1000 :-s 发送icmp包的大小bytes

4.查看网络设置信息
ifconfig -a:查看所有网卡信息
ip a:查看网卡信息

七.系统关机与重启命令
重启:
shutdown -r:安全重启,会通知正在登录的用户
shutdown -r now:马上重启
reboot:马上重启,不通知登录用户
init 6

关机:
shutdown -h:安全关机,会通知正在登录的用户
shutdown -h now:马上关机
init 0
poweroff:直接断电,相当于按住电源键3秒钟

echo b > /proc/sysrq-trigger 立即重新计算机
echo o > /proc/sysrq-trigger 立即关闭计算机


八.命令别名
alias:查看所有系统定义的别名
定义:
alias copy=cp
alias xrm="rm -r"
删除:unalias copy

九.输入/输出重定向
0:标准输入
1:标准输出
2:标准错误输出
>:输出重定向  date > file
>>:增量输出重定向 date >> file
<:输入重定向 wall < file
例子:
标准输出和错误输出分别定向到指定的文件
ls 1>/dev/null 2>/dev/null

标准输出和错误输出都定向到同一个文件
ls >/dev/null 2>&1  ===== ls >& /dev/null

十.管道
| : cat file | grep key | sort | uniq | wc -l

十一.命令连接符
; : 间隔命令
&& :逻辑与,前面的命令成功,才会执行后面的命令
|| :逻辑或,前面的命令失败,才会执行后面的命令

十二.命令替换符
`command`:ls -l `which touch` 会优先执行替换符里面的命令,并将结果作为前面命令的参数

十三.系统相关
runlevel:查看当前的系统运行级别
init 5:切换到5运行级别
0:关机
1:单用户安全模式
2:多用户,类似于3,但不支持nfs
3:多用户,完整模式
4:未使用
5:X window
6:重启

uname -a :查看系统类型

十四.系统时间
hwclock --hctosys:用主板时间设置软件时间
hwclock --systohc:用软件时间设置主板时间
hwclock --set --date="9/22/96 16:45:05"

date MMDDHHmmYYYY.ss:设置软件时间

十五.网络命令
1.ssh登录:
ssh -p 2188 user@192.168.1.219  //不同用户名
ssh -p 2188 192.168.1.219  //相同用户名

2.scp远程传输
scp -P 2188 xxx.txt  user@192.168.1.219:~/xxx.txt //不同用户名
scp -P 2188 xxx.txt  192.168.1.219:~/xxx.txt //相同用户名

十六.watch
定期执行程序,全屏显示输出
watch -n1 command
-n[num]:间隔多少秒执行一次command
例子:watch -n1 ls -al:每隔1秒,查看当前目录的变化,默认2秒


十七.系统启动时关闭进度条,显示详细信息
vi /boot/grub/grub.conf
#将下面内容最后的rhgb去掉即可
kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet

说明:
其中"rhgb"表示"redhat graphics boot",就是图形进度条模式。
而"quiet"表示在启动过程中只显示重要启动信息,类似硬件自检之类的消息不会显示,可以有选择地选用。




1.在compose Bar下可以对多个服务器同时进行操作。选择To All Sessions
  2. 查看JAVA进程:
  ps -ef | grep java
  ps auxf | grep java
  3.杀死JAVA进程:
  pkill java (在有反串改的时候可以用,杀死所有java进程)
  kill -9 进程ID
  ps -ef | grep "Dcatalina.base=/usr/oa/appserver" | grep -v "grep" | awk '{print   $2} ' | xargs kill -9
  4.目录查看和执行程序:
  cd /usr/oa/bin  (进入工程的目录中)
  cd .. (后退一个目录)
  ./startup.sh  ./stop.sh  (执行当前目录下的文件)
  5.进入某个用户
  su root (切换到root用户下)
  6.查看目录:
  ll (显示目录的详细信息)
  ls(显示目录下所有文件)
  7.在linux下修改文件内容
  1)选用vi选择需要修改的文件vi index.jsp
  2)然后会出现提示内容按一下i 进行修改
  3)修改完成后按esc键后再按 shift+冒号 最后输入wq
  8.查看硬盘是否有满
  df -h
  9.删除文件(清缓存的时候用)
  1.查看文件目录:pwd
  2.删除文件:rm -rf 文件夹目录
  10.复制文件
  cp  -r  /user/oa  /usr_back_oa
  11.查看日志
  tail -r catalina.out
  tail -n 300 catalina.out
  12.查看文件
  cat fileName.xml
  13.查看IP,开启远程连接服务
  ifconfig               --查看IP地址,注意这里是if开头而不是ip
  service sshd status    --查看sshd服务的状态
  service sshd start     --启动sshd服务的状态
  chkconfig --list
  chkconfig --list | grep sshd 查看启用服务
  14.列出各进程打开文件的数量
  lsof -n|awk '{print $2}' |sort|uniq -c |sort -nr|more
  直接统计JAVA进程连接数
  ps -ef| grep java | awk '{print $2}' | awk 'NR==1'| xargs lsof -p | wc -l
  15.先使用ps -ef|grep java查看,再查看12120的打开数量
  lsof -p 12120 |wc -l
  16.为tomcat授权,不能少sudo,username为用户名
  sudo chown -R username /Users/username/Documents/tomcat








常用命令
1.在compose Bar下可以对多个服务器同时进行操作。选择To All Sessions

2. 查看JAVA进程:
ps -ef | grep java
ps auxf | grep java

3.杀死JAVA进程:
pkill java (在有反串改的时候可以用,杀死所有java进程)
kill -9 进程ID
ps -ef | grep "Dcatalina.base=/usr/oa/appserver" | grep -v "grep" | awk '{print   $2} ' | xargs kill -9

4.目录查看和执行程序:
cd /usr/oa/bin  (进入工程的目录中)
cd .. (后退一个目录)
./startup.sh  ./stop.sh  (执行当前目录下的文件)

5.进入某个用户
su root (切换到root用户下)

6.查看目录:
ll (显示目录的详细信息)
ls(显示目录下所有文件)

7.在linux下修改文件内容
1)选用vi选择需要修改的文件vi index.jsp
2)然后会出现提示内容按一下i 进行修改
3)修改完成后按esc键后再按 shift+冒号 最后输入wq

8.查看硬盘是否有满
df -h

9.删除文件(清缓存的时候用)
1.查看文件目录:pwd
2.删除文件:rm -rf 文件夹目录

10.复制文件
cp  -r  /user/oa  /usr_back_oa

11.查看日志
tail -r catalina.out
tail -n 300 catalina.out

12.查看文件
cat fileName.xml

13.查看IP,开启远程连接服务
ifconfig               --查看IP地址,注意这里是if开头而不是ip
service sshd status    --查看sshd服务的状态
service sshd start     --启动sshd服务的状态
chkconfig --list
chkconfig --list | grep sshd 查看启用服务
14.列出各进程打开文件的数量
lsof -n|awk '{print $2}' |sort|uniq -c |sort -nr|more
直接统计JAVA进程连接数
ps -ef| grep java | awk '{print $2}' | awk 'NR==1'| xargs lsof -p | wc -l
15.先使用ps -ef|grep java查看,再查看12120的打开数量
lsof -p 12120 |wc -l


16.为tomcat授权,不能少sudo,username为用户名
sudo chown -R username /Users/username/Documents/tomcat



大型J2EE应用都在建构在linux环境下的。开发环境下我们可以通过samba映射成本地的网络驱动器,直接在windows环境下进行编程调试。但是最后的发布还是要到linux环境,同时我们对网上web服务器和数据库服务器的应用治理(比如自动脚本发布等),应用监控(web服务是否正常、mysql数据库的使用情况)、系统监控(监控磁盘空间的使用情况等)都要求程序员熟悉必要的linux知识。  当然程序员不必对整个linux系统样样精通。下面列出程序员基本需要把握的linux知识。 一、linux的基本命令 1、用户治理  userdel 删除用户帐号 useradd 增加用户账号 su 改变当前用户的ID 2、文件目录治理  ls 浏览目录,查看当前目录下的文件和文件名 chmod 修改文件权限 chown 改变文件所有者 cp 复制文件 cd 改变当前目录 mv 重命名文件或移动文件 rm 删除文件或者目录 pwd 当前目录 scp 远程拷贝 alias 别名 3、其他命令  ln 在文件之间建立链接  tail 输出文件内容后面的部分,一般我们会通过tail -f 实时查看当前程序打印的日志。 type 查看一个命令所在路径 wc 查看行数  grep 在文件内容中查找 find 查找文件 date 查看日期  crontab 制定计划任务,通常用于系统监控。
df 查看磁盘剩余空间,你最好在crontab中写个脚本监控磁盘的空间。超过90%就给相关的人员发email。  ps 查看进程状态 top 查看CPU的使用率 kill 终止进程  killall java程序员最喜欢用killall -9 java吧  w 查看登录用户和他们正在做什么,也可以看看系统的load。load太高,就该找找原因了。 who 查看当前用户的便当情况 tar 解压或压缩文件 echo 控制台输出 wget http访问 rpm rpm包治理 4、重定向、管道 5、标准输出、标准错误  6、使用\屏蔽一个非凡字符的含义 7、正则表达式  二、熟练把握vim编辑器  三、liunx环境下shell脚本、perl脚本的编写  为了对网上服务器应用进行治理,通常需要编写一些脚本。 脚本的编写重点把握下面几点:  1、理解双引号、单引号、反引号的含义。 2、反斜线的使用。  3、shell脚本赋值语句左边的变量名不要加上$,常写perl脚本的常犯此错误。  4、字符串比较长,含有空格的时候,作为一个参数时脚本出错,用双引号把字符串括起来。 5、把握好awk和sed的用法。 四、基本软件包的安装 apache、resin、mysql 一般的步骤就是: configure make


http://codingstandards.iteye.com/blog/801506
http://blog.csdn.net/coooliang/article/details/8562747
http://wenku.baidu.com/link?url=awTSllomWn_rujdgf_Hn4jCtX0VkhMBj7zVam5WOUUsHjOIR4RDELAe9BAkrHOBIU--xUcz0_3vZEakn7q8tEN2xFiDwrgSozgHXd2k66Au

http://wenku.baidu.com/link?url=RH5z6S9wht9WwH2W73JLpVDB0FyMGjt4uLedIUqqJGx-gPBULIkit59Bydxuk25a-KABRxsu3feJ8DJUI5b5Hg4Yoq5oiEH-xuHWnEEzHuG
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics