Linux学习基础二 【常用命令 管道符与重定向】

可以先看第一篇:Linux学习基础一

Linux常用命令

1.命令格式

-ctrl c:终止

-命令的提示符:[root@localhost~]#

-命令格式:命令 [选项] [参数]:选项用减号来调用

-man cat:查看cat命令

e.g: ls -l

​ ls -a:显示隐藏文件

​ ls -lh:人性化显示文件大小

解释:权限位 该目录下一级子目录的数量,文件的硬链接个数 所有者(属于用户,默认建立用户) 所属组(默认文件建立用户的有效组) 文件的大小(默认单位字节byte) 文件的修改或访问的最后时间 文件名

2.目录命令

ls:显示文件;cd:进入目录 ;mkdir:建立目录;pwd:显示当前目录;rmdir:删掉空目录,一般使用rm命令;

-《同名文件同名目录不可行》

3.文件操作命令

echo 文件:输出文件内容到屏幕 >>(命令重定向)

echo file1 >> file2:把文件1的内容追加到文件2 之后

rm:删除文件的命令,rm -r:删除目录,rm -rf:强制删除,无法找回

touch:创建空文件或修改文件时间

stat:查看文件详细信息:访问,数据修改,状态更改的最后时间等。

cat:查看文件内容;cat -n:显示行号;cat -A:列出隐藏符号

more:分屏显示文件内容 b键向上翻;q键退出;空格向上翻;enter一行一行;/字符串:搜索,与vi中相同。

less:分行显示,箭头上线翻

head:显示文件头

tail:显示文件尾 tail -n:显示指定行数 tail -f:监听不退出

4.ln链接(常用软链接)

---- ls -idl /:根的i节点号 长显示 只显示目录

1.硬链接:引用计数代表硬链接个数

ln /root/test /tmp/testh

源文件与硬链接文件:拥有相同的i节点号;修改任何一个都会对应的两个都改变;删任意一个文件,另一个也能用;标记不清;不能链接目录(性能消耗太大了);不能跨区。类似于一个地方两个门。

2.软链接:可以理解为windows下的快捷方式.。软链接浅蓝色,有箭头指向;引用计数不增加;

ln -s /root/test /tmp/tests

​ 不同的i节点号和块。删除软链接,源文件不影响,删除源文件,软链接无用了。

5.目录和文件操作

-rm:-r 递归删除 -f 强制删除 -i 默认,交互删除

-cp:拷贝 -r 复制目录,递归复制 -i 交互 -a=-dpr:原文复制 时间也复制

-mv:剪切,移动或者重命名 -i 交互 -f 强制 不用加-r

6.帮助命令

1.man 命令

​ G:文件最后;g:最前面;/字符串:当前页向下翻找字符串;

1-----------9级别帮助》

​ man -f 和 whatis 命令 :查看级别帮助;使用whatis报错 可以 make whatis尝试。

2.info 命名

​ 相当于一本书,可以查看命令的详解。

3.help 命令

​ 只能获取Shell内置命令的帮助。

4.命令 --help

​ 中文翻译命令。

7.搜索命令

1.whereis 命令与which 命令

​ 查找二进制命令,源文件和帮助文档命令。which可以找到命令的别名。【搜索命令的命令】

2.locate 命令

​ 只能搜文件名,按照数据库搜索,速度快,消耗资源少。【/var/lib/mlocate/mlocate.db:该数据库并不是随时更新的,updatedb强制升级数据库;vi /etc/updatedb.conf:配置文件】

3.find 命令

​ (1)按照文件名搜索:find 搜索位置 搜索路径 [选项] 搜索内容

​ -name: 按照文件名搜

​ -iname:不区分文件名大小写

​ -inum:按照inode号搜索

find . -name abc:搜当前(.)目录文件名为abc的文件

​ (2)按照文件大小搜:find 搜索路径 [选项] 搜索内容

​ -size [+|-] :按照指定大小搜,“+”是比指定大小大的文件。。。。

​ (3)按照文件的修改时间搜索

​ 访问时间(atime),修改时间(mtime),状态修改时间(ctime),时间也可以加减。

​ (4)按照权限搜素

​ -perm :还可以加减权限,只要有一个权限大,就可以找到;减号是每个身份都小才可以找到。

​ (5)按照所有者和所属组搜索

​ -uid 用户ID:按照用户ID查找所有者是指定ID的文件

​ -gid组ID:按照用户组ID查找所属组是指定ID的文件

​ -user:按照用户名是指定用户的文件

​ -nouser:查找没有所有者的文件

​ (6)按照文件类型搜索

​ -type d:查找目录

​ -type f:查找普通文件

​ -type l:查找软链接文件

​ (7)逻辑运算符

​ -a: and逻辑与

​ -o: or逻辑或

​ -not :逻辑非

find . -size +1k:搜当前目录大于1k的,会搜出来大于1k的文件名和当前目录下的目录名。

find . -size +1k -a type f:搜当前目录下大小大于1k且类型为普通文件

​ (8)其它选项:-exec与-ok

​ 类似于管道符“|”,但不是文本处理,不支持管道符。

管道符

输入方式:

同时按下键盘上的“Shift”和“\”反斜杠键即可打出管道符

格式:

执行格式为“命令A | 命令B

作用:

管道命令符的作用也可以用一句话来概括“把前一个命令原本要输出到屏幕的信息当作是后一个命令的标准输入

通配符与正则表达式的区别:

find用于搜索符合条件的文件名,通配符匹配,包含匹配。grep是正则,完全匹配,匹配字符串

【通配符(完全匹配)】:

​ -*:全部,匹配0个或任意

​ -?:任意一个

​ -[]:匹配中括号中任意一个字符,[abc]:或者a,或b,或者c

​ -[0-9]:0-9任意一个数字

​ -[A-Za-z]:匹配任意一个字母

​ -[^]:取反的意思

【正则(含有匹配)】:

​ -?:匹配前一个字符0次或1次,shell不认识,egrep才可以。

​ -*:匹配前一个字符0次或多次

​ 上面中括号相同

​ -限位符:^:行首,在括号外的,括号内的和通配符一样。

​ -$:行尾

grep "[0-9]$" abc:在abc文件中,寻找0-9中数字结尾的字符。

管道符:shlle命令----》|

格式:命令1 | 命令2:管道符,文本流操作;命令1的正确输出作为命令二的输入。

分屏显示:ll -a /etc/ | more

找yum:ll /etc | grep yum不能用find,管道符后面全是字符串。

netstat:netstat -tuln | grep 80所有开启端口是否有80

输入输出重定向

概念:

注:这里的输出是针对屏幕显示来说的

标准输入重定向(STDIN,文件描述符为0):默认从键盘输入,也可从其他文件或命令中输入。

标准输出重定向(STDOUT,文件描述符为1):默认输出到屏幕。

错误输出重定向(STDERR,文件描述符为2):默认输出到屏幕。

输入重定向:

是指把文件导入到命令中

输出重定向:

是指把原本要输出到屏幕的数据信息写入到指定文件中。平常使用输出重定向的频率更高,所以又将输出重定向分为了标准输出重定向和错误输出重定向两种不同的技术,以及清空写入与追加写入两种模式。

比如说查看文件的命令,正确就会输出文件的基本信息,不然会报错,说文件或目录不存在什么的
清空写入就是不管文件里面有没有东西都删干净再写入,追加写就是在文件内容后面跟上写入

在这里插入图片描述

符号作用
命令 > 文件屏幕输出的正确信息重定向到文件中,会清空文件中的内容
命令 >> 文件屏幕输出的正确信息重定向到文件中,会追加在文件中的内容之后
命令 2> 文件将屏幕错误输出重定向到文件中,清空写入
命令 2>> 文件将屏幕错误输出重定向到文件中,追加写
命令 < 文件将文件作为命令的标准输入
命令 << 分界符从标准输入中读入,直到遇见分界符才停止
命令 < 文件1 > 文件2将文件1作为命令的标准输入并将标准输出到文件2

:对于重定向中的标准输出模式,可以省略文件描述符1不写,而错误输出模式的文件描述符2是必须要写的。**其实最常用的就是前两条了。**这部分在shell脚本里面巨好用的。

如果想把命令的报错信息写入到文件,该怎么操作呢?当用户在执行一个自动化的Shell脚本时,这个操作会特别有用,而且特别实用,因为它可以把整个脚本执行过程中的报错信息都记录到文件中,便于安装后的排错工作。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值