前言
在日常维护系统中,我们会使用到各种各样的操作指令,但对于新手我们应该如何去灵活运用呢?
今天给大家整理一篇在系统维护中经常使用的一些指令,其中涵盖了linux、Unix、CentOS、Ubuntu 等操作系统的操作。
文件&目录
# cd /home //进入 '/home' 目录
# cd .. //返回上一级目录
# cd ../.. //返回上两级目录
# cd - //返回上次所在目录
# cp file1 file2 //将file1复制为file2
# cp -a dir1 dir2 //复制一个目录
# cp -a /tmp/dir1 . // 复制一个目录到当前工作目录(.代表当前目录)
# ls //查看目录中的文件
# ls -a //显示隐藏文件
# ls -l //显示详细信息
# ls -lrt //按时间显示文件(l表示详细列表,r表示反向排序,t表示按时间排序)
# pwd // 显示工作路径
# mkdir dir1 // 创建 'dir1' 目录
# mkdir dir1 dir2 // 同时创建两个目录
# mkdir -p /tmp/dir1/dir2 // 创建一个目录树
# mv dir1 dir2 //移动/重命名一个目录
# rm -f file1 //删除 'file1'
# rm -rf dir1 //删除 'dir1' 目录及其子目录内容
查看文件内容
# cat file1 // 从第一个字节开始正向查看文件的内容
# head -2 file1 //查看一个文件的前两行
# more file1 //查看一个长文件的内容
# tac file1 //从最后一行开始反向查看一个文件的内容
# tail -3 file1 // 查看一个文件的最后三行
文本处理:
# grep str /tmp/test //在文件 '/tmp/test' 中查找 "str"
# grep ^str /tmp/test //在文件 '/tmp/test' 中查找以 "str" 开始的行
# grep [0-9] /tmp/test //查找 '/tmp/test' 文件中所有包含数字的行
# grep str -r /tmp/* //在目录 '/tmp' 及其子目录中查找 "str"
# diff file1 file2 //找出两个文件的不同处
# sdiff file1 file2 // 以对比的方式显示两个文件的不同
查找
# find / -name file1 //从 '/' 开始进入根文件系统查找文件和目录
# find / -user user1 //查找属于用户 'user1' 的文件和目录
# find /home/user1 -name \*.bin //在目录 '/ home/user1' 中查找以 '.bin' 结尾的文件
# find /usr/bin -type f -atime +100 //查找在过去100天内未被使用过的执行文件
# find /usr/bin -type f -mtime -10 //查找在10天内被创建或者修改过的文件
# locate \*.ps //寻找以 '.ps' 结尾的文件,先运行 'updatedb' 命令
# find -name '*.[ch]' | xargs grep -E 'expr' //在当前目录及其子目录所有.c和.h文件中查找 'expr'
# find -type f -print0 | xargs -r0 grep -F 'expr' //在当前目录及其子目录的常规文件中查找 'expr'
# find -maxdepth 1 -type f | xargs grep -F 'expr' //在当前目录中查找 'expr'
解压和压缩
# tar -cvf archive.tar file1 //把file1打包成 archive.tar
解释:(-c: 建立压缩档案;-v: 显示所有过程;-f: 使用档案名字,是必须的,是最后一个参数)
# tar -cvf archive.tar file1 dir1 //把 file1,dir1 打包成 archive.tar
# tar -tf archive.tar //显示一个包中的内容
# tar -xvf archive.tar //释放一个包
# tar -xvf archive.tar -C /tmp //把压缩包释放到 /tmp目录下
# gzip file1 //压缩 file1
# gzip -9 file1 //最大程度压缩 file1
# zip file1.zip file1 //创建一个zip格式的压缩包
# zip -r file1.zip file1 dir1 //把文件和目录压缩成一个zip格式的压缩包
# bzip2 file1 //压缩 file1
# bunzip2 file1.bz2 //解压 file1.bz2
# gunzip file1.gz //解压 file1.gz
# unzip file1.zip //解压一个zip格式的压缩包到当前目录
# unzip test.zip -d /tmp/ //解压一个zip格式的压缩包到 /tmp 目录
网络
# ifconfig eth0 //显示一个以太网卡的配置
# ifconfig eth0 192.168.1.1 netmask 255.255.255.0 // 配置网卡的IP地址
# ifdown eth0 //禁用 'eth0' 网络设备
# ifup eth0 //启用 'eth0' 网络设备
# iwconfig eth1 //显示一个无线网卡的配置
# iwlist scan //显示无线网络
# ip addr show //显示网卡的IP地址
其他操作
# su - //切换到root权限(与su有区别)
# shutdown -h now //关机(立刻)
# shutdown -r now //重启(立刻)
# top //罗列使用CPU资源最多的linux任务 (输入q退出)
# pstree //以树状图显示程序
# man ping //查看参考手册(例如ping 命令)
# passwd //修改密码
# df -h //显示磁盘的使用情况
# cal -3 //显示前一个月,当前月以及下一个月的月历
# cal 10 1988 //显示指定月,年的月历
# date --date '1970-01-01 UTC 1427888888 seconds' 把一相对于1970-01-01 00:00的秒数转换成时间
yum 工具
# yum -y install [package] //下载并安装一个rpm包
# yum localinstall [package.rpm] //安装一个rpm包,使用你自己的软件仓库解决所有依赖关系
# yum -y update //更新当前系统中安装的所有rpm包
# yum update [package] //更新一个rpm包
# yum remove [package] //删除一个rpm包
# yum list // 列出当前系统中安装的所有包
# yum search [package] //在rpm仓库中搜寻软件包
# yum clean [package] //清除缓存目录(/var/cache/yum)下的软件包
# yum clean headers //删除所有头文件
# yum clean all //删除所有缓存的包和头文件
常用快捷键
CentOS 6.4 中可以通过系统->首选项->键盘快捷键来设置快捷键,常用快捷键信息如下:
Ctrl + u //删除光标之前到行首的字符
Ctrl + k //删除光标之前到行尾的字符
Ctrl + c //取消当前行输入的命令,相当于Ctrl + Break
Ctrl + a //光标移动到行首(ahead of line),相当于通常的Home键
Ctrl + e //光标移动到行尾(end of line)
Ctrl + f //光标向前(forward)移动一个字符位置
Ctrl + b //光标往回(backward)移动一个字符位置
Ctrl + l //清屏,相当于执行clear命令
Ctrl + r //显示:号提示,根据用户输入查找相关历史命令(reverse-i-search)
Ctrl + w // 删除从光标位置前到当前所处单词(word)的开头
Ctrl + t //交换光标位置前的两个字符
Ctrl + y //粘贴最后一次被删除的单词
Ctrl + Alt + d //显示桌面
Alt + b //光标往回(backward)移动到前一个单词
Alt + d //删除从光标位置到当前所处单词的末尾
Alt + F2 //运行
Alt + F4 //关闭当前窗口
Alt + F9 //最小化当前窗口
Alt + F10 //最大化当前窗口
Alt + Tab //切换窗口
Alt +鼠标左键 //移动窗口(或在最下面的任务栏滚动鼠标滑轮)
[Tab] //命令行自动补全,键入命令或文件名的前几个字符,然后按 [Tab] 键,系统会自动补全命令或显示匹配键入字符的所有命令。
[鼠标中键] //粘贴突出显示的文本。使用鼠标左键来选择文本。把光标指向想粘贴文本的地方。点击鼠标中间键来粘贴。