1. echo命令
可以使用echo命令在命令行内输出指定内容
语法:echo 输出的内容
无需选项,只有一个参数,表示要输出的内容,复杂内容可以用 ”” 包围
带有空格或 \ 等特殊符号,建议使用双引号包围。
如果不使用双引号的话,空格后很容易被识别为参数2,但是echo命令好像不受影响。
#显示普通字符串:
[root@localhost ~]# echo "It is a test"
#显示转义字符
[root@localhost ~]# echo "\"It is a test\""
#read 命令从标准输入中读取一行,并把输入行的每个字段的值指定给 shell 变量
[root@localhost ~]#!/bin/sh
read name
echo "$name It is a test"
#以上代码保存为 test.sh,name 接收标准输入的变量,结果将是:
#[root@localhost ~]# sh test.sh
#OK #标准输入
#OK It is a test #输出
#原样输出字符串,不进行转义或取变量(用单引号)
[root@localhost ~]# echo '$name\"'
#$name\"
#显示换行# -e 开启转义
[root@localhost ~]# echo -e "OK! \n"
#OK!
[root@localhost ~]# echo "It is a test"
#It is a test
2. 反引号 `
echo pwd
本意是想,输出当前的工作路径,但是pwd被作为普通字符输出了。
可以通过将命令用反引号(通常也称之为飘号)` 将其包围
被 ` 包围的内容,会被作为命令执行,而非普通字符.
#显示命令执行结果
[root@localhost ~]# echo `date`
Thu May 24 10:08:46 CST 2023
3. tail命令
tail 命令和 head 命令正好相反,会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷
新,只要 filename 更新就可以看到最新的文件内容。其基本格式如下:
[root@localhost ~]# tail [选项] 文件名
选项包括:
#查看 /etc/passwd 文件最后 3 行的数据内容:
[root@localhost ~]# tail -3 /etc/passwd
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
oprofile:x:16:16:Special user account to be used by OProfile:/var/lib/oprofile:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
#查看 /etc/passwd 文件末尾 100 个字节的数据内容。
[root@localhost ~]# tail -c 100 /etc/passwd
cpdump:x:72:72::/:/sbin/nologin
#可以使用 "-f" 选项来监听文件的新増内容:
[root@localhost ~]#tail -f anaconda-ks.cfg
@server-platform
@server-policy
pax
oddjob
sgpio
certmonger
pam_krb5
krb5-workstation
perl-DBD-SQLite
%end
#光标不会退出文件,而会一直监听在文件的结尾处
4. 重定向符
>,将左侧命令的结果,覆盖写入到符号右侧指定的文件中;
>>,将左侧命令的结果,追加写入到符号右侧指定的文件中。
[root@localhost ~]# echo “Hello Linux” > a.txt
[root@localhost ~]# cat a.txt
#Hello Linux
[root@localhost ~]# echo “Hello word” > a.txt
[root@localhost ~]# cat a.txt
#再次执行,覆盖新内容
#Hello word
[root@localhost ~]# echo “Hello bro” >> a.txt
[root@localhost ~]# cat a.txt
#再次执行,使用>>追加新内容
#Hello word
#Hello bro