在Linux环境下使用一些命令行和shell编程已经有很长时间了,一直想写一篇关于linux命令行和shell编程的文章,但被一些事情搁置下来了。今天抽出一些时间把Linux下常用的高频命令一个个亲自验证之后写了这篇文章。很多命令可能你用过,但是有时候可能记得有点模糊。这里将它系统的列举出来,希望能对自己和他人有些许帮助。
文件或目录的创建和删除
1)创建文件与目录
1)touch file1 file2 file3
2) mkdir -p dir1/dir11/dir111
-p (中间一定不要留空格)可以建立级联目录,如果不带这个参数,新建目录的父目录必须已经存在。
3)删除命令rm(功能更强) 与 rmdir
删除一个目录树 rm–rf dir1
说明:
1、rmdir命令仅用于移除空目录。由于dir1目录下面有文件,因此rmdir dir1命令将拒绝移除该目录。可以-rf 参数,一次性移除。但是由于该命令没有任何提示,请谨慎使用。
2、rm 命令常用的参数有三个:-i,-r ,-f
-i: 删除操作时候,系统会询问我们是否删除文件;
-r:这个操作可以连同这个目录下面的子目录一起删除。特别注意这个功能比rmdir命令要强大的多,不仅可以删除指定的目录,还可以删除该目录下面所以的文件和子目录;
-f:这个操作可以不经过系统确认强制删除文件。
文件的复制移动
1)cp /home/jin/p/1.txt .
2)cp -r 表示连同原文件中的子目录一同拷贝
3)mv jin1/p/1.txt jin1/jin2 :移动文件到知道的目录
4)mv 1.txt 11.txt :将当前目录下面的1.txt更名为 11.txt
显示文件内容
1)cat 1.sh显示文件内容 (-n为显示行号)
说明:
1、cat 1.sh | more以分页方式列出文件file1的内容;
2、cat 1.txt 2.txt 按照顺序显示1.txt,2.txt的内容;
3.cat 1.txt 2.txt>3.txt 把1.txt,2.txt的内容结合起来再重定向到3.txt文件中。
2)gedit 1.sh用gedit编辑器显示文本内容 (这个命令方便对文本查看编辑等)
3)vi 1.sh或者 vim 1.sh
参看文件或目录结构
1) ls -l
说明:
1、常用文件类型:目录( d )文件(-)字符设备(c)块设备(b);附:l:链接,n:网络文件
2、-l (long ) :参数生成长列表格式(使用一行列出目录中的每个文件或目录)。
2)tree #查看当前目录下面完成的目录结构
说明:
1.建议不要在目录结构非常复杂的情况下使用,如主目录;
2.遇到tree命令不能执行,先安装tree,在使用这个命令。
-d 只列出目录文件
3)find 将列出当前工作目录下的目录树的每一个文件
参看指定文件
1)ls -l | grep ^d 列出当前目录下的所有目录
说明:
1、语法:命令1 |命令2
将命令1的执行结果送到命令2,做为命令2的输入。
2)ls –l | grep ^- (-为减号,不是下划线) #列出前目录下的普通文件
3)ls -l *.sh #列出当前目录下的.sh文件
4)grep 1.txt 1.sh 寻找文件1.sh中包含1.txt 所在行的文本内容
5)grep 1 *
查找当前目录下所有文件中包含1(大小写不敏感)所在行的文本内容及文件名 ( 目录文件不包含在内 )
6)grep 1 * -n查找内容为1的文件及所在的文件名,显示出行号
说明:
1、-n写在后面或者前面均可,其他命令也可带 -n显示行号,如后面的 cat -n 1.sh
用户名相关
1)wo am i或者 whoami 查看自己用户名
2)passwd
说明:
语法: passwd
Old password: <输入旧密码>
New password: <输入新密码(最好为6~8字,英文字母与数字混合) >
Retype new password: <再输入一次密码>
------ 只有root用户才更改其它用户的密码
3)切换到根用户
su root 进入根用户
语法: su [-] root
例如:
su root进入用户root 的帐号。
passwrod : <输入用户root 的密码>
“-“ 号的作用加载新用户的环境,如果不包含-号则用当前的用户环境,注意“-”两边都需要有空格。
说明:
1、如果发现切换到根用户时候,输入Linux系统设置密码后,提示不成功。可能我们没有激活root账户;
2、激活根用户: sudo passwd root。
文件压缩和解压(用到频率非常高)
1)创建压缩包:tar -czf jin1.tar.gz jin1 单原文件 tar -czf jp.tar.gz jin1/ p/
2)列出但不解压tar.gz文件:tar -tf jin1.tar.gz
3)解压压缩包: tar -xzf jp.tar.gz -C /home/jin 将jp.tar.gz包解压到/home/jin目录下
说明:
1.-C中 ,C是大写,如果没有这个参数,将会解压到当前目录下。
2.相关命令选型说明:
-c : create,创建一个新的tar归档文件;
-z: zip,将输出重定向到gzip命令进行压缩;
-f: file,输出结果到文件(或者设备)file; [tar命令选择中,这个参数基本少不了]
-t: list,列出现有tar归档文件的内容;
-x: extract ,解压现有归档文件;
-v: view,在处理过程中列出文件。