Linux 零基础速查:看完就能上手的基础命令合集3
·
Linux 零基础速查:看完就能上手的基础命令合集3
Linux 中获取帮助
man命令

man命令可以用来查询大部分命令的帮助手册,它会简绍这些命令当时创造时是怎么去思考的,也会比 命令--help 更加详细
例如:man history
[gzk@centos7 ~ 17:13:57]$ man history
将中文简绍转成英文简绍,因为有时汉化包翻译的会乱码
unset LANG
[gzk@centos7 ~ 17:15:02]$ unset LANG
[gzk@centos7 ~ 17:15:15]$ man history
使用root用户更新man page库
[gzk@centos7 ~ 18:11:14]$ mandb
更新后使用 -k 选线搜索关键字,查询到命令中带有需要的关键字后,再man具体的命令。
man -k 命令
[gzk@centos7 ~ 18:12:44]$ man -k passwd
chgpasswd (8) - update group passwords in batch mode
chpasswd (8) - update passwords in batch mode
fgetpwent_r (3) - get passwd file entry reentrantly
getpwent_r (3) - get passwd file entry reentrantly
gpasswd (1) - administer /etc/group and /etc/gshadow
grub2-mkpasswd-pbkdf2 (1) - Generate a PBKDF2 password hash.
lpasswd (1) - Change group or user password
lppasswd (1) - add, change, or delete digest passwords.
pam_localuser (8) - require users to be listed in /etc/passwd
passwd (1) - update user's authentication tokens
sslpasswd (1ssl) - compute password hashes
passwd (5) - password file
passwd2des (3) - RFS password encryption
pwhistory_helper (8) - Helper binary that transfers password hashes...
saslpasswd2 (8) - set a user's sasl password
smbpasswd (5) - The Samba encrypted password file
vncpasswd (1) - change the VNC password



which命令
which查看vi命令代表什么
[gzk@centos7 ~ 18:19:27]$ which vi
alias vi='vim'
/usr/bin/vim

whereis命令
whereis 查看关键字对应的程序位置,帮助文档,源码
[gzk@centos7 ~ 18:26:32]$ whereis passwd
passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man1/passwd.1.gz /usr/share/man/man5/passwd.5.gz

vim编辑器
vim模式
- command 模式:该模式下键盘中的字母有特殊含义。例如G,跳转到最后一行;gg,跳转到第一行。
- edit 模式:在command模式下按i,进入该模式。在该模式可以输入内容。在该模式下按Esc返回command模式。
- extended command 模式:在command模式下按:,进入该模式。在该模式下,可以保存文件(:w),退出编辑(:q),强制退出编辑(:q!),报错并退出(:wq)。
- visual edit 模式:在command模式下按 v(单个字符选中)、V(整行选中)或者ctrl+v(按矩形选中),进入该模式。在该模式下,用于选中文件,随后可以复制或删除选中的内容。
命令行模式:
w,向后1个word(光标在单词开头);e,向后1个word(光标在单词末尾)
b,向前1个word
^或0,行首
$,行尾
(,上一个句子头部;),下一个句子尾部。
{,上一个自然段;},下一个自然段。
gg,第一行;G,最后一行。
插入模式:
i ,当前位置插入。(insert)
I,行首插入。
a,当前位置追加。(append)
A,行末追加。
o,向下新开一个空白行。
O,向上新开一个空白行。
复制:yy,复制1行,相当于y1y。以此类推 y2y y2w y2b。
粘贴:p 当前位置后粘贴,P 当前位置前粘贴
删除:
- x,删除当前单个字符。5x,删除当前字符和后续4个字符。
- X,删除前一单个字符。
- dw,删除1个word,以此类推 d5w d3b d2d d$。
- D,从当前删除到最后,相当于d$。
回退:
- u,撤销上一个操作。
- U,撤销整行修改。
- Ctrl+r,反向撤销,与u相反。
修改,相当于删除后插入:
- s,删除当前字符,并进入编辑模式。
- S,删除当前行,并进入编辑模式。
- c,代表替换动作,例如cw,删除1个word,并进入编辑模式。以此类推 c5w。
- C,从当前删除到最后,并进入编辑模式。
替换:
- r,替换单个字符后回退到命令行模式。
- R,替换模式,一直替换直到按Ese返回命令行模式。
vim配置
两个位置:
全局:/etc/vimrc,给所有用户设置一些默认值。
用户:~/.vimrc,特定用户的个性化设置。
首先切换到root用户 su - root
[gzk@centos7 ~ 18:56:55]$ su - root
密码:
上一次登录:四 7月 16 18:56:46 CST 2026pts/1 上
[root@centos7 ~ 18:57:04]# vim /etc/vimrc
进去后找到最后一行,加上set number showcmd 作用是之后每一个使用vim进入文本编辑时都会有行号和显示操作命令
按esc退出编辑模式
:wq 保存退出


Linux 输入输出重定向
首先查找一下 /etc 目录下 文件名是passwd的所有文件
[gzk@centos7 ~ 19:05:16]$ find /etc -name 'passwd'
find: ‘/etc/grub.d’: 权限不够
find: ‘/etc/pki/CA/private’: 权限不够
find: ‘/etc/pki/rsyslog’: 权限不够
/etc/pam.d/passwd
find: ‘/etc/dhcp’: 权限不够
/etc/passwd
find: ‘/etc/selinux/targeted/active’: 权限不够
find: ‘/etc/selinux/final’: 权限不够
find: ‘/etc/lvm/archive’: 权限不够
find: ‘/etc/lvm/backup’: 权限不够
find: ‘/etc/lvm/cache’: 权限不够
find: ‘/etc/polkit-1/rules.d’: 权限不够
find: ‘/etc/polkit-1/localauthority’: 权限不够
find: ‘/etc/firewalld’: 权限不够
find: ‘/etc/audisp’: 权限不够
find: ‘/etc/audit’: 权限不够
find: ‘/etc/ipsec.d’: 权限不够
find: ‘/etc/libvirt’: 权限不够
find: ‘/etc/cups/ssl’: 权限不够
find: ‘/etc/sudoers.d’: 权限不够

将找到的文件名清单覆盖写入到passwd.stdout文件中
[gzk@centos7 ~ 19:10:03]$ find /etc -name 'passwd' 1> passwd.stdout
find: ‘/etc/grub.d’: 权限不够
find: ‘/etc/pki/CA/private’: 权限不够
find: ‘/etc/pki/rsyslog’: 权限不够
find: ‘/etc/dhcp’: 权限不够
find: ‘/etc/selinux/targeted/active’: 权限不够
find: ‘/etc/selinux/final’: 权限不够
find: ‘/etc/lvm/archive’: 权限不够
find: ‘/etc/lvm/backup’: 权限不够
find: ‘/etc/lvm/cache’: 权限不够
find: ‘/etc/polkit-1/rules.d’: 权限不够
find: ‘/etc/polkit-1/localauthority’: 权限不够
find: ‘/etc/firewalld’: 权限不够
find: ‘/etc/audisp’: 权限不够
find: ‘/etc/audit’: 权限不够
find: ‘/etc/ipsec.d’: 权限不够
find: ‘/etc/libvirt’: 权限不够
find: ‘/etc/cups/ssl’: 权限不够
find: ‘/etc/sudoers.d’: 权限不够
[gzk@centos7 ~ 19:10:39]$ cat passwd.stdout
/etc/pam.d/passwd
/etc/passwd
可以看到成功的记录被放进了passwd.stdout里面
# 补充说明
# 1> passwd.list可简写为> passwd.list
# 1和>之间不能有空格

将找到的文件名清单追加写入到passwd.stdout文件中
[gzk@centos7 ~ 19:11:36]$ find /etc -name 'passwd' 1>> passwd.stdout
find: ‘/etc/grub.d’: 权限不够
find: ‘/etc/pki/CA/private’: 权限不够
find: ‘/etc/pki/rsyslog’: 权限不够
find: ‘/etc/dhcp’: 权限不够
find: ‘/etc/selinux/targeted/active’: 权限不够
find: ‘/etc/selinux/final’: 权限不够
find: ‘/etc/lvm/archive’: 权限不够
find: ‘/etc/lvm/backup’: 权限不够
find: ‘/etc/lvm/cache’: 权限不够
find: ‘/etc/polkit-1/rules.d’: 权限不够
find: ‘/etc/polkit-1/localauthority’: 权限不够
find: ‘/etc/firewalld’: 权限不够
find: ‘/etc/audisp’: 权限不够
find: ‘/etc/audit’: 权限不够
find: ‘/etc/ipsec.d’: 权限不够
find: ‘/etc/libvirt’: 权限不够
find: ‘/etc/cups/ssl’: 权限不够
find: ‘/etc/sudoers.d’: 权限不够
[gzk@centos7 ~ 19:16:55]$ cat passwd.stdout
/etc/pam.d/passwd
/etc/passwd
/etc/pam.d/passwd
/etc/passwd
可以看到成功的记录被追加放进了passwd.stdout里面

将多个文件内容合并为1个
[gzk@centos7 ~ 19:18:41]$ cat /etc/fstab /etc/hosts > allinone
[gzk@centos7 ~ 19:18:48]$ cat allinone
#
# /etc/fstab
# Created by anaconda on Tue Jul 14 10:25:57 2026
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=fc64745a-ddb5-4136-bffa-0563ca82b403 /boot xfs defaults 0 0
/dev/mapper/centos-home /home xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

将错误信息覆盖写入到passwd.stderr文件中
[gzk@centos7 ~ 19:22:01]$ find /etc -name 'passwd' 2> passwd.stderr
/etc/pam.d/passwd
/etc/passwd
[gzk@centos7 ~ 19:22:58]$ cat passwd.stderr
find: ‘/etc/grub.d’: 权限不够
find: ‘/etc/pki/CA/private’: 权限不够
find: ‘/etc/pki/rsyslog’: 权限不够
find: ‘/etc/dhcp’: 权限不够
find: ‘/etc/selinux/targeted/active’: 权限不够
find: ‘/etc/selinux/final’: 权限不够
find: ‘/etc/lvm/archive’: 权限不够
find: ‘/etc/lvm/backup’: 权限不够
find: ‘/etc/lvm/cache’: 权限不够
find: ‘/etc/polkit-1/rules.d’: 权限不够
find: ‘/etc/polkit-1/localauthority’: 权限不够
find: ‘/etc/firewalld’: 权限不够
find: ‘/etc/audisp’: 权限不够
find: ‘/etc/audit’: 权限不够
find: ‘/etc/ipsec.d’: 权限不够
find: ‘/etc/libvirt’: 权限不够
find: ‘/etc/cups/ssl’: 权限不够
find: ‘/etc/sudoers.d’: 权限不够
可以看到失败的记录被放进了passwd.stderr里面

将错误信息追加写入到passwd.err文件中
[gzk@centos7 ~ 19:23:10]$ echo =========== 1>> passwd.stderr
[gzk@centos7 ~ 19:25:39]$ find /etc -name 'passwd' 2>> passwd.stderr
/etc/pam.d/passwd
/etc/passwd
[gzk@centos7 ~ 19:26:12]$ cat passwd.stderr
find: ‘/etc/grub.d’: 权限不够
find: ‘/etc/pki/CA/private’: 权限不够
find: ‘/etc/pki/rsyslog’: 权限不够
find: ‘/etc/dhcp’: 权限不够
find: ‘/etc/selinux/targeted/active’: 权限不够
find: ‘/etc/selinux/final’: 权限不够
find: ‘/etc/lvm/archive’: 权限不够
find: ‘/etc/lvm/backup’: 权限不够
find: ‘/etc/lvm/cache’: 权限不够
find: ‘/etc/polkit-1/rules.d’: 权限不够
find: ‘/etc/polkit-1/localauthority’: 权限不够
find: ‘/etc/firewalld’: 权限不够
find: ‘/etc/audisp’: 权限不够
find: ‘/etc/audit’: 权限不够
find: ‘/etc/ipsec.d’: 权限不够
find: ‘/etc/libvirt’: 权限不够
find: ‘/etc/cups/ssl’: 权限不够
find: ‘/etc/sudoers.d’: 权限不够
===========
find: ‘/etc/grub.d’: 权限不够
find: ‘/etc/pki/CA/private’: 权限不够
find: ‘/etc/pki/rsyslog’: 权限不够
find: ‘/etc/dhcp’: 权限不够
find: ‘/etc/selinux/targeted/active’: 权限不够
find: ‘/etc/selinux/final’: 权限不够
find: ‘/etc/lvm/archive’: 权限不够
find: ‘/etc/lvm/backup’: 权限不够
find: ‘/etc/lvm/cache’: 权限不够
find: ‘/etc/polkit-1/rules.d’: 权限不够
find: ‘/etc/polkit-1/localauthority’: 权限不够
find: ‘/etc/firewalld’: 权限不够
find: ‘/etc/audisp’: 权限不够
find: ‘/etc/audit’: 权限不够
find: ‘/etc/ipsec.d’: 权限不够
find: ‘/etc/libvirt’: 权限不够
find: ‘/etc/cups/ssl’: 权限不够
find: ‘/etc/sudoers.d’: 权限不够
可以看到失败的记录被追加放进了passwd.stderr里面

将错误信息、正确信息 覆盖 写入到不同文件
[gzk@centos7 ~ 19:33:54]$ find /etc -name 'passwd' 1> stdout 2> stderr
[gzk@centos7 ~ 19:34:00]$ cat stdout
/etc/pam.d/passwd
/etc/passwd
[gzk@centos7 ~ 19:34:10]$ cat stderr
find: ‘/etc/grub.d’: 权限不够
find: ‘/etc/pki/CA/private’: 权限不够
find: ‘/etc/pki/rsyslog’: 权限不够
find: ‘/etc/dhcp’: 权限不够
find: ‘/etc/selinux/targeted/active’: 权限不够
find: ‘/etc/selinux/final’: 权限不够
find: ‘/etc/lvm/archive’: 权限不够
find: ‘/etc/lvm/backup’: 权限不够
find: ‘/etc/lvm/cache’: 权限不够
find: ‘/etc/polkit-1/rules.d’: 权限不够
find: ‘/etc/polkit-1/localauthority’: 权限不够
find: ‘/etc/firewalld’: 权限不够
find: ‘/etc/audisp’: 权限不够
find: ‘/etc/audit’: 权限不够
find: ‘/etc/ipsec.d’: 权限不够
find: ‘/etc/libvirt’: 权限不够
find: ‘/etc/cups/ssl’: 权限不够
find: ‘/etc/sudoers.d’: 权限不够

tee命令
tee 命令作用,接收管道传递过来的stdin,并继续作为stdout输出。
tee命令覆盖保存到文件
[gzk@centos7 ~ 19:37:13]$ find /etc -name 'passwd' 2> /dev/null | tee passwd.list
/etc/pam.d/passwd
/etc/passwd
[gzk@centos7 ~ 19:38:24]$ cat passwd.list
/etc/pam.d/passwd
/etc/passwd

tee命令追加保存到文件
[gzk@centos7 ~ 19:38:31]$ find /etc -name 'passwd' 2> /dev/null |tee -a passwd.list
/etc/pam.d/passwd
/etc/passwd
[gzk@centos7 ~ 19:40:01]$ cat passwd.list
/etc/pam.d/passwd
/etc/passwd
/etc/pam.d/passwd
/etc/passwd

标准输入重定向给程序
一次性将多行内容写入到文件中,EOF是结束符(自定义)
[gzk@centos7 ~ 19:40:07]$ cat > A1.txt << EOF
> hello
> linux
> EOF
[gzk@centos7 ~ 19:43:04]$ cat A1.txt
hello
linux

更多推荐



所有评论(0)