本章命令(共9个):
1
2
3
4
5
6
7
8
9
输出重定向
输入重定向
管道符
通配符
三种引号
软连接
硬链接
根“/”
绝对路径vs相对路径
- 覆盖输出 >:会覆盖掉原先的文件内容 (1>)
- 追加输出 >>:不会覆盖原始文件内容,会在原始内容末尾继续添加(1>>)
- 错误输出 2>:会覆盖掉原先的文件内容
- 错误追加输出 2>>:会覆盖掉原始文件内容,会在原始内容末尾继续添加
- 将标准输出与错误输出共同写入到文件中 &>:覆盖原有内容
- 将标准输出与错误输出共同写入到文件中 &>>:追加到原有内容的后面
╭─root@localhost.localdomain ~/2
╰─➤ echo "hello" > fil1 #会覆盖原文件内容(标准输出)
╭─root@localhost.localdomain ~/2
╰─➤ echo good >> fil1 #不覆盖原文件内容 (标准输出)
╭─root@localhost.localdomain ~/2
╰─➤ cd fil2 &>> fil1 #不覆盖原文件内容(标准与错误输出)
╭─root@localhost.localdomain ~/2
╰─➤ cat fil1
hello
good
cd: 没有那个文件或目录: fil2
shell上:
0表示标准输入
1表示标准输出
2表示标准错误输出
> 默认为标准输出重定向,与 1> 相同
2>&1 意思是把 标准错误输出 重定向到 标准输出.
1>&2 意思就是把 标准输出 重定向到 标准错误输出
&>file 意思是把 标准输出 和 标准错误输出 都重定向到文件file中
#例子
snmpwalk -v1 -c public 192.168.0.1 .1.3.6.1.4.1.102.8 >/dev/null 2>&1
# 2>&1 的意思就是将标准错误重定向到标准输出。这里标准输出已经重定向到了 /dev/null。那么标准错误也会输出到/dev/null。
╭─root@cjk ~/2
╰─➤ cat /etc/passwd | wc -l
43
- 星号(*)代表匹配零个或多个字符(可以为0个)
- 问号(?)代表匹配单个字符(单个字符必须存在)
- 中括号内加上数字[0-9]代表匹配0~9之间的单个数字的字符,
- 中括号内加上字母[abc]则是代表匹配a、b、c三个字符中的任意一个字符。
╭─root@cjk ~/2
╰─➤ ls
1abc 1abcde 2abc 2abcde 3abc 3abcde 4abc 4abcde 5abc 5abcde
╭─root@cjk ~/2
╰─➤ ls *a
zsh: no matches found: *a
╭─root@cjk ~/2
╰─➤ ls *a*
1abc 1abcde 2abc 2abcde 3abc 3abcde 4abc 4abcde 5abc 5abcde
╭─root@cjk ~/2
╰─➤ ls ?a??
1abc 2abc 3abc 4abc 5abc
╭─root@cjk ~/2
╰─➤ ls [1..9]abc
1abc
╭─root@cjk ~/2
╰─➤ ls [1-9]abc
1abc 2abc 3abc 4abc 5abc
╭─root@cjk ~/2
╰─➤ ls 1ab[cde]
1abc
- 单引号(''):转义其中所有的变量为单纯的字符串;
- 双引号(""):对其中变量进行解释处理;
- 反引号(``):把其中的命令执行后返回结果;
╭─root@cjk ~/2
╰─➤ fda=cjk
╭─root@cjk ~/2
╰─➤ echo 'hello $fda' #不解释
hello $fda
╭─root@cjk ~/2
╰─➤ echo "hello $fda" #解释
hello cjk
╭─root@cjk ~/2
╰─➤ name=`ls /root` #执行命令
╭─root@cjk ~/2
╰─➤ echo $name
2
anaconda-ks.cfg
initial-setup-ks.cfg
╭─root@cjk ~/2
╰─➤ ln -s 1 ruan1 #为源文件“1”创建软连接“ruan1” ln -s
╭─root@cjk ~/2
╰─➤ ls
1 ruan1
╭─root@cjk ~/2
╰─➤ echo "hello" >> ruan1 #写入内容进软连接
╭─root@cjk ~/2
╰─➤ cat 1
hello #源文件内容同步
╭─root@cjk ~/2
╰─➤ rm 1 #删除源文件
╭─root@cjk ~/2
╰─➤ cat ruan1
cat: ruan1: 没有那个文件或目录
╭─root@cjk ~/2
╰─➤ ls
ruan1 ---->特殊显示(变背景)说明源文件已被删除的软连接
╭─root@cjk ~/2
╰─➤ touch 1 #创建一个同名源文件
╭─root@cjk ~/2
╰─➤ cat ruan1 #自动连接并清空原内容
╭─root@cjk ~/2
╰─➤
╭─root@cjk ~/2
╰─➤ ln 2 ying2 #为源文件“2”创建硬链接“ying2”
╭─root@cjk ~/2
╰─➤ ls
1 2 ruan1 ying2
╭─root@cjk ~/2
╰─➤ echo "good" >>ying2 #写入内容进硬链接
╭─root@cjk ~/2
╰─➤ cat 2
good #源文件同步
╭─root@cjk ~/2
╰─➤ rm 2 #删除源文件
╭─root@cjk ~/2
╰─➤ cat ying2
good #硬链接无影响
目录名称
应放置文件的内容
/boot
开机所需文件—内核、开机菜单以及所需配置文件等
/dev
以文件形式存放任何设备与接口
/etc
配置文件
/home
用户主目录
/bin
存放单用户模式下还可以操作的命令
/lib
开机时用到的函数库,以及/bin与/sbin下面的命令要调用的函数
/sbin
开机过程中需要的命令
/media
用于挂载设备文件的目录
/opt
放置第三方的软件
/root
系统管理员的家目录
/srv
一些网络服务的数据文件目录
/tmp
任何人均可使用的“共享”临时目录
/proc
虚拟文件系统,例如系统内核、进程、外部设备及网络状态等
/usr/local
用户自行安装的软件
/usr/sbin
Linux系统开机时不会使用到的软件/命令/脚本
/usr/share
帮助与说明文件,也可放置共享文件
/var
主要存放经常变化的文件,如日志
/lost+found
当文件系统发生错误时,将一些丢失的文件片段存放在这里
/etc/motd 直接vi编辑器编辑即可
推荐趣味欢迎界面:https://www.jianshu.com/p/260de66bad2d
- 在Linux系统中另外还有一个重要的概念—路径。
- 路径指的是如何定位到某个文件,分为绝对路径与相对路径。
- 绝对路径指的是从根目录(/)开始写起的文件或目录名称
- 相对路径则指的是相对于当前路径的写法。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章