第2章:新手必须掌握的Linux命令
tab补全
man -h 查看帮助
一、常用系统工作命令
1.echo 命令
echo $SHELL
echo Linuxprobe.com
2.date 命令 : date [选项] [+指定的格式]
date (查看当前系统时间)
date "+%Y-%m-%d %H:%M:%S" (按照“年-月-日 小时:分钟:秒”的格式查看)
date "+%j" (获取今天是一年中的第几天)
date -s "20181121 19:02:12" (重设系统的当前时间)
3.reboot 命令
reboot (重启系统,只能用root)
4.poweroff 命令
poweroff (关闭系统,只能root)
5.wget 命令 :在终端中下载网络文件,格式为“wget [参数] 下载地址”。
wget https://www.linuxprobe.com/docs/LinuxProbe.pdf (下载文件到当前路径下)
wget -b https://www.linuxprobe.com/docs/LinuxProbe.pdf (后台下载文件)
wget -P dir https://www.linuxprobe.com/docs/LinuxProbe.pdf (下载文件到指定目录)
wget -b -P dir1 https://www.linuxprobe.com/docs/LinuxProbe.pdf (将文件以后台下载方式下到指定目录)
wget -r -p www.linuxprobe.com (递归下载www.linuxprobe.com内的所有页面数据及文件,
下载完自动保存到当前路径下一个名为www.linuxprobe.com的目录中)
注:crtl+c终止任务或者的crtl+d退出下载过程。
6.ps 命令 : 用于查看系统中的进程状态,格式为“ps [参数]”
ps -au (显示所有进程的用户及详细信息)
ps -x (显示没有控制终端的进程)
ps -ef|grep sissub5.3 (-e显示所有进程,-f是全格式,grep是命令查找) ()
7.top 命令 : 用于动态地监视进程活动与系统负载等信息
top
8.pidof 命令:查询某个指定服务进程的PID值
pidof sshd获取网卡配置与网络状态等信息
9.kill 命令: 终止某个指定PID的服务进程
kill 2156
10.killall 命令 : 终止某个指定名称的服务所对应的全部进程 (好像不好用)
pidof httpd
killall httpd
pidof httpd
二、系统状态检测命令
1.ifconfig 命令:获取网卡配置与网络状态等信息 (不可用)
ifconfig
2.uname 命令: 看系统内核与系统版本等信息
uname -a
cat /etc/redhat-release (查看当前系统版本的详细信息)
3.uptime 命令: 查看系统的负载信息
uptime
4.free 命令:显示当前系统中内存的使用量信息,格式为“free [-h]”
free -h
5.who 命令: 当前登入主机的用户终端信息
who
6.last 命令 : 查看所有系统的登录记录
last
7.history 命令 : 用于显示历史执行过的命令
history
history -c (清空当前用户在本机上执行的Linux命令历史记录信)
cat ~/.bash_history
8.sosreport 命令 :收集系统配置及架构信息并输出诊断文档 (不可用)
sosreport
三、工作目录切换命令
1. pwd 命令 :显示用户当前所处的工作目录
pwd
2. cd 命令 : 切换工作路径
cd /etc
cd /bin
cd - (返回到上一次的目录)
cd ~ (快速切换到根目录)
3. ls 命令 : 显示目录中的文件信息
ls -al
ls -ld /etc (查看目录属性信息)
四、文本文件编辑命令
1.cat 命令 : 查看纯文本文件
cat -n file1.txt (查看时显示行号)
2.more 命令 :
cd /etc
more kdump.conf 翻页查看文件内容(space下一页,b上一页,q:离开more)
less kdump.conf 翻页查看文件内容(pagedown下一页,pageup上一页,q:离开less)
3.head 命令 : 查看纯文本文档的前N行
cd /etc
head -n 20 kdump.conf 显示文件前20行
4.tail 命令 : 查看纯文本文档的后N行或持续刷新内容
tail -n 20 kdump.conf 显示文件后20行
5.tr 命令: 替换文本文件中的字符,格式为“tr [原始字符] [目标字符]”
cat file1.txt | tr you she (把file1.txt中的you替换成she)
cat file1.txt | tr [a-z] [A-Z] (把file1.txt中的小写字母转换成大家字母)
6. wc 命令 : 统计指定文本的行数、字数、字节数
wc -l /etc/kdump.conf (显示文件的行数)
wc -w /etc/kdump.conf (显示文件的单词数)
wc -c /etc/kdump.conf (显示文件的字节数)
wc -l /etc/passwd (查看当前系统中有多少个用户)
7. stat 命令 : 查看文件的具体存储信息和时间等信息
stat file1.txt
8. cut 命令 : 按“列”提取文本字符,格式为“cut [参数] 文本”
cut -d: -f1 /etc/passwd (提取第一列的数据,-d是设置间隔符,-f1指第一列)
9. diff 命令 : 比较多个文本文件的差异,格式为“diff [参数] 文件”
diff -c file1.txt file2.txt (判断两个文件是否相同)
diff --brief file1.txt file2.txt (显示两个文件的具体不同)
五,文件目录管理命令
1.touch 命令 : 创建空白文件或设置文件的时间,格式为“touch [选项] [文件]”
touch -d "2018-11-28 16:20" file1.txt (创建空白文件或者修改读取时间与修改时间,-a:读取,-m:修改时间)
2.mkdir 命令 : 创建空白的目录,格式为“mkdir [选项] 目录”
mkdir dir (创建一个目录)
mkdir -p a/b/c/d/e (创建多级目录)
mkdir -p /lucas/fengpei/a/b (直接创建根目录下的多级目录)
3.cp 命令 : 复制文件或目录,格式为“cp [选项] 源文件 目标文件”
cp file1.txt file2.txt (复制文件)
cp -r dir dir2 (递归持续复制(用于目录)
4. mv 命令 : 剪切文件或将文件重命名,格式为“mv [选项] 源文件 [目标路径|目标文件名]
mv file1.txt file2.txt (文件更名)
mv file1.txt dir (文件移动)
5. rm 命令 : rm file1.txt
rm file1.txt (删除一个文件,有提示)
rm -f file1.txt (删除一个文件,无提示)
6. dd命令:用于按照指定大小和个数的数据块来复制文件或转换文件,格式为“dd [参数]”
dd if=/dev/zero of=560_file count=1 bs=560M (复制出个560M的数据)
dd if=/dev/cdrom of=RHEL-server-7.0-x86_64-Linux.iso (将光驱做成镜像)
dd if=/root/lucas/linux/file1.txt of=20_file count=1 bs=20M
7.file 命令 : 用于查看文件的类型,格式为“file 文件名”
file file1.txt
file /dev/sda
六、打包压缩与搜索命令
1.tar命令: 用于对文件进行打包压缩或解压(-c参数用于创建压缩文件,-x参数用于解压文件,-v参数向用户不断显示压缩或解压的过程,-C参数用于指定要解压到哪个指定的目录,-z参数指定使用Gzip格式来压缩或解压文件)
tar czvf file.tar.gz file1.txt (将file1.txt压缩成当前目录下的file.tar.gz文件)
tar czvf test/file.tar.gz file1.txt (将file1.txt压缩成指定目录下的file.tar.gz文件)
tar xzvf file.tar.gz (将file.tar.gz解压到当前目录)
tar xzvf file.tar.gz -C dir (将file.tar.gz解压到指定目录,目录需提前存在)
2.grep 命令 :
grep /sbin/nologin /etc/passwd (查找出当前系统中不允许登录系统的所有用户信息)
grep "root" /etc/passwd (在某个文档中查找指定的内容是否存在)
grep -i "Root" /etc/passwd (忽略查找内容的大小写)
grep -n "root" /etc/passwd (显示出查找内容的行号)
grep -A 2 "core id" /proc/cpuinfo ( -A n:显示匹配到的字符串所在的行及其后n行,after)
3.find命令 : 按照指定条件来查找文件,格式为“find [查找路径] 寻找条件 操作”
find /etc/ -name "hosts" -print (获取到etc目录中所有以host开头的文件列表)
find / -user fengpei -exec cp -a {} /root/lucas/linux/dir/ \; (把属于fengpie用户的所有文件拷贝到dir目录,-a: 归档,{}表示find命令搜索出的每一个文件,命令的结尾必须是“\;”)