美文网首页
Shell 的18条常用命令整理

Shell 的18条常用命令整理

作者: 宫若石 | 来源:发表于2019-03-28 05:46 被阅读0次

    1、  ls: 类似于dos下的dir命令

    ls最常用的参数有三个: -a -l -F。

    ls –a

    Linux上的文件以.开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示一般文件名外,连隐藏文件也会显示出来。

    ls –l

    该参数显示更详细的文件信息。

    ls –F

    使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示目录,@表示连结文件,这都是因为使用了-F这个参数。但是现在基本上所有的Linux发行版本的ls都已经内建了-F参数,也就是说,不用输入这个参数,我们也能看到各种分辨符号。

    2、cd: 用于切换用户当前工作目录

    cd aaa 进入aaa目录

    cd    命令后不指定目录,会切换到当前用户的home 目录

    cd ~  作用同cd后不指定目录,切换到当前用户的home 目录

    cd -  命令后跟一个减号,则会退回到切换前的目录

    cd ..  返回到当前目录下的上一级目录

    3、pwd:用于显示用户当前工作目录

    4、mkdir 和 rmdir

    midir:创建目录    rmdir:删除目录

    两个命令都支持-p参数,对于mkdir命令若指定路径的父目录不存在则一并创建,对于rmdir命令则删除指定路径的所有层次目录,如果文件夹里有内容,则不能用rmdir命令

    如下:

    mkdir -p 1/2/3

    rmdir -p 1/2/3

    5、cp:复制命令

    复制一个文件到另一目录:cp 1.txt ../test2

    复制一个文件到本目录并改名:cp 1.txt 2.txt

    复制一个文件夹a并改名为b:cp -r a b

    6、mv:移动命令

    将一个文件移动到另一个目录:mv 1.txt ../test1

    将一个文件在本目录改名:mv 1.txt 2.txt

    将一个文件一定到另一个目录并改名:mv 1.txt ../test1/2.txt

    7、rm命令

    rm命令用于删除文件,与dos下的del/erase命令相似,rm命令常用的参数有三个:-i,-r,-f。

    –i :系统在删除文件之前会先询问确认,用户回车之后,文件才会真的被删除。需要注意,linux下删除的文件是不能恢复的,删除之前一定要谨慎确认。

    –r:该参数支持目录删除,功能和rmdir命令相似。

    –f:和-i参数相反,-f表示强制删除

    8、du、df命令

    du命令可以显示目前的目录所占用的磁盘空间,df命令可以显示目前磁盘剩余空间。

    如果du命令不加任何参数,那么返回的是整个磁盘的使用情况,如果后面加了目录的话,就是这个目录在磁盘上的使用情况。

    du -hs 指定目录  查看指定目录的总大小

    du -hs ./* 查看当前目录下的所有文件夹和文件的大小

    这两个命令都支持-k,-m和-h参数,-k和-m类似,都表示显示单位,一个是k字节一个是兆字节,-h则表示human-readable,即友好可读的显示方式。

    9、cat命令

    cat命令的功能是显示或连结一般的ascii文本文件。cat是concatenate的简写,类似于dos下面的type命令。用法如下:

    cat file1 显示file1文件内容

    cat file1 file2 依次显示file1,file2的内容

    cat file1 file2 > file3 把file1, file2的内容结合起来,再“重定向(>)”到file3文件中。

    ">"是右重定向符,表示将左边命令结果当成右边命令的输入,注意:如果右侧文件是一个已存在文件,其原有内容将会被清空,而变成左侧命令输出内容。如果希望以追加方式写入,请改用">>"重定向符。

    如果">"左边没有指定文件,如: cat >file1,将会等用户输入,输入完毕后再按[Ctrl]+[c]或[Ctrl]+[d],就会将用户的输入内容写入file1。

    10、echo命令

    echo命令的使用频率不少于ls和cat,尤其是在shell脚本编写中。

    语法:echo [-ne][字符串]

    功能:echo会将输入的字符串送往标准输出,输出的字符串间以空白字符隔开, 并在最后加上换行符。

    参数:

    -n 显示字串时在最后自动换行

    -e 支持以下格式的转义字符, -E 不支持以下格式的转义字符

    /a 发出警告声;

    /b 删除前一个字符;

    /c 最后不加上换行符号;

    /f 换行但光标仍旧停留在原来的位置;

    /n 换行且光标移至行首;

    /r 光标移至行首,但不换行;

    /t 插入tab;

    /v 与/f相同;

    // 插入/字符;

    /nnn 插入nnn(八进制)所代表的ASCII字符;

    示例:

    Oracle@hjtest:~/hgd> echo "123" "456"

    123 456

    oracle@hjtest:~/hgd> echo "123/n456"

    123/n456

    oracle@hjtest:~/hgd> echo -e "123/n456"

    123

    456

    oracle@hjtest:~/hgd> echo -E "123/n456"

    123/n456

    oracle@hjtest:~/hgd> echo -E "123///456"

    123//456

    oracle@hjtest:~/hgd> echo -e "123///456"

    123/456

    oracle@hjtest:~/hgd> echo -e "123/100456"

    123@456

    注意事项:

    在Linux使用的bash下,单引号’’和双引号是有区别的,单引号忽略所有的转义,双引号不会忽略以下特殊字符:

    Dollar signs ($),Back quotes (`),Backslashes (/),Excalmatory mark(!)

    示例如下:

    oracle@hjtest:~> echo "`TEST`"

    -bash: TEST: command not found

    oracle@hjtest:~> echo '`TEST`'

    `TEST`

    oracle@hjtest:~> echo "$TEST"

    相关文章

      网友评论

          本文标题:Shell 的18条常用命令整理

          本文链接:https://www.haomeiwen.com/subject/tcqfbqtx.html