Linux下常见的Shell命令

Shell是一个命令解释器
[登录用户名@主机名当前目录]提示符
Shell有两种提示符
# 表明终端是由root用户打开
$ 表明终端是由一般用户打开



(通配符)
* abc*表示所有以adc开头的文件
? abc?表示所有以adc开头的长度为4个字符的文件
(Shell命令)
ls(显示命令)(不会显示隐藏文件)
-a 显示所有文件和目录

-l 以长格式显示文件信息(可简写为ll

-t 将结果按修改时间进行排序,新的文件或目录排在前面
-R 若目录下有文件,则列出目录下所有文件

 ~ 显示起始目录下所有的文件名和子目录名

eg:ls -al /         显示根目录下所有文件的完整信息

eg:ls -at a* 显示当前目录下所有以a开头的文件,新的文件排在前面




pwd 显示当前目录所在的绝对路径
cd 改变当前目录
cd .. 切换到当前目录的父目录




mkdir 创建目录

-p         若要建立的目录的上层目录不存在,则先创建它

eg:mkdir -p dir1/dir2 在当前目录下创建dir1/dir2,如果dir1不存在则先创建它



rmdir 删除目录

-p         当删除指定目录后,若该目录的父目录为空,则也将其删除

eg:rmdir -p dir1/dir2 在当前目录下的dir1目录中删除dir2子目录,若删除dir2后dir1变为空目录,则也将其删除



cat                         文件内容查看和连接
-n/--number                 对内容进行按行编号输出
-b/--number-nonblock 与-n相似,只是对于空行不进行编号
-s                         当遇到连续两行以上的空白行时,就替换为一个空白行

-v                         显示不可打印的字符

eg:cat -n test.c 将文件test.c的内容加上行号后显示输出

eg:cat test1.c test2.c 将文件test1.c和test2.c的内容串接在一起并输出


cp 文件复制
-r 若源目录下还有文件或目录,则都拷贝到目的地

-f 若目标目录下已经有同名的文件,则把它删除并把源文件拷贝到目标目录下

eg:cp test.c tmp/program.c 把当前目录下的test.c文件拷贝到/tmp目录下并命名为program.c

eg:cp *.c /tmp 把当前目录下所有以.c结尾的文件拷贝到/tmp目录下


rm 文件删除
-d 删除指定的目录
-i 删除前先询问要求确认
-r 若目录非空,则删除目录下所有的文件

-f 强制删除

eg:rm *.c 删除当前目录下所有以.c结尾的文件

eg:rm -rf typ 强制删除typ目录下所有的文件和子目录,子目录下的文件或目录都被删除


mv 1:移动

    2:重命名(=rename)

eg:mv 123 456【456存在则移动 不存在则重命名】


halt 关机(必须为root权限)


touch 创建文件

touch linux-{1..3}.c 将会创建linux-1.c,linux-2.c,linux-3.c三个文件


mkfifo 创建有名管道


echo 向屏幕输入一串字符,类似C语言的printf()函数。
语   法:echo [-n/e][字符串]或 echo [--help][--version]
说     明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加上换行号。
参   数:
-n             不要在最后自动换行
-e             若字符串中出现以下字符,则特别加以处理,而不会将它当成一般
文字输出:
\a 发出警告声;
\b 删除前一个字符;
\c 最后不加上换行符号;
\f 换行但光标仍旧停留在原来的位置;
\n 换行且光标移至行首;
\r 光标移至行首,但不换行;
\t 插入tab;
\v 与\f相同;
\\ 插入\字符;
\nnn 插入nnn(八进制)所代表的ASCII字符;
–help         显示帮助
–version     显示版本信息

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页