玩转Linux系统之常用命令
我们在操作Linux系统的时候,经常会用到一些命令,下面是Linux系统一些常见操作命令的使用情况介绍。
—
文件命令
① 创建单个文件
touch test.txt
② 创建多个文件
touch test1.txt test2.txt
touch {test1.txt,test2.txt}
① 删除文件时,系统会询问是否删除
rm test.txt
② 强制删除文件
rm -rf test.txt
① 文件移动
mv test.txt /tmp/
② 文件重命名
mv test.txt a.txt
③ 文件移动并重命名
mv test.txt /tmp/a.txt
① 文件拷贝
cp test.txt /tmp/
② 文件拷贝并重命名
cp test.txt /tmp/a.txt
③ 一个文件内容拷贝到里另一个文件中
cat test1.txt > test2.txt
④ 一个文件内容追加到里另一个文件中
cat test1.txt >> test2.txt
① vim工作模式
② 插入命令
③ 定位命令
④ 删除命令
⑤ 替换和取消命令
① 正序查看
cat test.txt
② 倒序查看
tac test.txt
③ 从前向后以页读取文件(上翻:[b],下翻:[空格键])
more test.txt
④ 从第5行向后以页读取文件(上翻:[b],下翻:[空格键])
more +5 test.txt
⑤ 查找第一个出现"test"字符串的行,并从该处前两行开始显示输出
more +/test test.txt
⑥ 从前向后以页读取文件(上翻:[pageup],下翻:[pagedown])
less test.txt
⑦ 显示文件的前n行 (默认10行,不带n)
head -n test.txt
⑧ 显示文件的后n行 (默认10行,不带n)
tail -n test.txt
⑨ 跟踪显示文件新追加的内容
tail -f test.txt
⑩ 文本过滤,模糊查找含字母a的行
grep a test.txt
⑪ 显示test.txt文件第1,3,5行(-d:指定分隔符;-f:指定文件)
cut -d : -f 1,3,5 test.txt
⑫ 文件内容排序(-k:指定字段;3:第三列;-t:指定分隔符;-n:以数字大小进行排序;-u:去重)
sort -k 3 -t : -n -u test.txt
① 将test.txt的用户拥有者设为zwh1,组的拥有者设为zwh2
chown zwh1:zwh2 test.txt
② 将当前目录下所有文件与子目录下文件的用户拥有者设为zwh1,组拥有者设为zhw2
chown -R zwh1:zwh2 *
③ 将当前目录下的所有文件与子目录皆设为任何人可读取
chmod -R a+r *
④ 将test1.txt和test2.txt的拥有者和所属组文件权限设为可写,其他设为不可写
chmod ug+w,o-w test1.txt test2.txt
|08其他他文件操作
① 查看文件详情
stat test.txt
② 查看文件大小
du -h test.txt
[root@hdp1 /]# du -h zwh/
4.0K zwh/
③ 查看文件夹及子目录文件大小
[ ]
0 zwh/test1.txt
0 zwh/test2.txt
4.0K zwh/test.txt
4.0K zwh/
④ 回到原来路径
cd -
⑤ 回到上级路径
cd ..
02
—
系统命令
① 查看主机名
hostname
② 修改主机名(重启后永久生效),将名字修改即可
vim /etc/hostname
① 找到对应虚拟机的网卡如ifcfg-eth0,修改IP
vim /etc/sysconfig/network-scripts/ifcfg-eth0
② 强制删除文件
rm -rf test.txt
① 显示全部信息
uname -a
② 显示操作系统的发行编号
uname -r
③ 显示操作系统名称
uname -s
① 显示文件详细信息
ls -l /tmp/a.txt
② 显示文件类型
file /tmp/a.txt
③ 显示文件状态信息
stat /tmp/a.txt
④ 显示文件在系统的状态信息
stat -f /tmp/a.txt
df -h
|06查看当前用户的计划任务服务
crontab -l
cut -d: -f1 /etc/passwd
cut -d: -f1 /etc/group
top
cut -d: -f1 /etc/group
netstat -s
netstat -lntp
grep MemTotal /proc/meminfo
grep MemFree /proc/meminfo
uptime
last
03
—
用户和用户组
① 添加一个tom用户,设置它属于users组,并添加注释信息
useradd -g users -c "hr tom" tom
② 设置tom用户的密码
passwd tom
③ 修改tom用户的登陆名为tom1
usermod -l tom1 tom
④ 将tom添加到zwh和root组中
usermod -G zwh,root tom
① 添加一个zwh的组
groupadd zwh
② 将tom用户从root组和zwh组删除
gpasswd -d tom root和gpasswd -d tom zwh
③ 将zwh组名修改为zwh1
groupmod -n zwh1 zwh
04
—
which ls
find / -name "zwh*" -ls
find / -name "zwh*" -ok rm {} \;
find / -name "zwh*" -exec rm {} \;
find /usr -user hadoop -ls
find /usr -user hadoop -a -group root -ls
find /usr -user hadoop -o -group root -a -type d
find / -perm -777 -type d -ls
history
—
打包和压缩
① gzip压缩
gzip test.txt
② gzip解压
gzip -d test.txt.gz
① bzip2压缩
bzip2 test
② bzip2解压
bzip2 -d test.bz2
① 打包并压缩成bz2
tar -jcvf a.tar.bz2
② 解压
tar -jxvf a.tar.bz2
① 打包
tar -cvf bak.tar
② 解包
tar -xvf bak.tar
① 打包并压缩gzip
tar -zcvf test.tar.gz
② 解压缩
tar -zxvf test.tar.gz
③ 解压到/usr/下
tar -zxvf test.tar.gz -C /usr
tar -ztvf test.tar.gz
—
firewall-cmd --state
systemctl stop firewalld.service
systemctl start firewalld.service
systemctl disable firewalld.service
service iptables status
service iptables stop
service iptables star
chkconfig iptables --list
chkconfig iptables on
chkconfig iptables off