最近一直在对CentOS 进行初体验,各种学习命令肿么用,不过其实大多和DOS是一样的,只是命令的表达上可能有点儿不一样,毕竟这些都不是一家出来的嘛~
废话不多说,直接上命令和解析!
常用命令
文件与目录操作
命令 | 解析 |
---|---|
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 | 查看一个文件的最后三行 |
vi file | 打开并浏览文件 |
文本内容处理
命令 | 解析 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
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 | 以对比的方式显示两个文件的不同 | ||||||||||||
vi file |
|
查询操作
命令 | 解析 |
---|---|
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’ |
压缩、解压
命令 | 解析 |
---|---|
bzip2 file1 | 压缩 file1 |
bunzip2 file1.bz2 | 解压 file1.bz2 |
gzip file1 | 压缩 file1 |
gzip -9 file1 | 最大程度压缩 file1 |
gunzip file1.gz | 解压 file1.gz |
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目录下 |
zip file1.zip file1 | 创建一个zip格式的压缩包 |
zip -r file1.zip file1 dir1 | 把文件和目录压缩成一个zip格式的压缩包 |
../down/wapgame/244 | 解压一个zip格式的压缩包到当前目录 |
unzip test.zip -d /tmp/ | 解压一个zip格式的压缩包到 /tmp 目录 |
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 | 删除所有缓存的包和头文件 |
网络相关
命令 | 解析 |
---|---|
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的秒数转换成时间 |
XSheel 5相关操作
窗体快捷键
命令 | 解析 |
---|---|
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:命令行自动补全。使用 shell 提示时可使用这一方式。键入命令或文件名的前几个字符,然后按 [Tab] 键,它会自动补全命令或显示匹配键入字符的所有命令。
在滚动条的空白处点击鼠标中键:屏幕即滚动到那个地方。
在桌面或文件管理器中直接按 / 就可以输入位置,打开文件管理器。
在 vi 或 Firefox 中直接按 / 即可进入快速搜索状态。
网站链接和图片可直接拖放到桌面或者目录,可以马上下载。
直接将文件管理器中的文件拖到终端中就可以在终端中得到完整的路径名。
系统常用命令
下面,就来介绍这些CentOS常用命令。
一:使用CentOS常用命令查看cpu
more /proc/cpuinfo | grep "model name"
grep "model name" /proc/cpuinfo
[root@localhost /]# grep "CPU" /proc/cpuinfo
model name : Intel(R) Pentium(R) Dual CPU E2180 @ 2.00GHz
model name : Intel(R) Pentium(R) Dual CPU E2180 @ 2.00GHz
如果觉得需要看的更加舒服
grep "model name" /proc/cpuinfo | cut -f2 -d:
二:使用CentOS常用命令查看内存
复制代码代码如下:
grep MemTotal /proc/meminfo
grep MemTotal /proc/meminfo | cut -f2 -d:
free -m |grep "Mem" | awk '{print $2}'
三:使用CentOS常用命令查看cpu是32位还是64位
查看CPU位数(32 or 64)
getconf LONG_BIT
四:使用CentOS常用命令查看当前linux的版本
more /etc/redhat-release
cat /etc/redhat-release
五:使用CentOS常用命令查看内核版本
uname -r
uname -a
六:使用CentOS常用命令查看当前时间
date上面已经介绍如何同步时间了
七:使用CentOS常用命令查看硬盘和分区
df -h
fdisk -l
也可以查看分区
du -sh
可以看到全部占用的空间
du /etc -sh
可以看到这个目录的大小
八:使用CentOS常用命令查看安装的软件包
查看系统安装的时候装的软件包
cat -n /root/install.log
more /root/install.log | wc -l
查看现在已经安装了那些软件包
rpm -qa
rpm -qa | wc -l
yum list installed | wc -l
不过很奇怪,我通过rpm,和yum这两种方式查询的安装软件包,数量并不一样。没有找到原因。
九:使用CentOS常用命令查看键盘布局
cat /etc/sysconfig/keyboard
cat /etc/sysconfig/keyboard | grep KEYTABLE | cut -f2 -d=
十:使用CentOS常用命令查看selinux情况
sestatus
sestatus | cut -f2 -d:
cat /etc/sysconfig/selinux
十一:使用CentOS常用命令查看ip,mac地址
复制代码代码如下:
在ifcfg-eth0 文件里你可以看到mac,网关等信息。
ifconfig
cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep IPADDR
cat /etc/sysconfig/network-scripts/ifcfg-eth0 | grep IPADDR | cut -f2 -d=
ifconfig eth0 |grep "inet addr:" |awk '{print $2}'|cut -c 6-
ifconfig | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'
查看网关
cat /etc/sysconfig/network
查看dns
cat /etc/resolv.conf
十二:使用CentOS常用命令查看默认语言
echo $LANG $LANGUAGE
cat /etc/sysconfig/i18n
十三:使用CentOS常用命令查看所属时区和是否使用UTC时间
cat /etc/sysconfig/clock
十四:使用CentOS常用命令查看主机名
hostname
cat /etc/sysconfig/network
修改主机名就是修改这个文件,同时最好也把host文件也修改。
十五:使用CentOS常用命令查看开机运行时间
uptime
09:44:45 up 67 days, 23:32, ...
看来刚才确实是网段的问题,我的机器还是67天前开机的。
#系统资源使用情况
复制代码代码如下:
vmstat 1 -S m
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 233 199 778 0 0 4 25 1 1 3 0 96 0 0
0 0 0 233 199 778 0 0 0 0 1029 856 13 1 86 0 0
系统文件操作
在众多的Linux终端命令中,我们应该分类来介绍一下,这里先说文件目录类、驱动挂载类、程序安装类、压缩解压类、进程控制类,这里所有的 Linux终端命令都会被经常的使用到,熟悉这些命令工作中应该能轻松许多。
一、文件目录类
1.建立目录:mkdir 目录名
2.删除空目录:rmdir 目录名
3.无条件删除子目录: rm -rf 目录名
4.改变当前目录:cd 目录名 (进入用户home目录:cd ~;进入上一级目录:cd -)
5.查看自己所在目录:pwd
6.查看当前目录大小:du
7.显示目录文件列表:ls -l (-a:增加显示隐含目录)
其中:蓝:目录;绿:可执行文件;红:压缩文件;浅蓝:链接文件;灰:其他文件;红底白字:错误的链接文件
8.浏览文件:more 文件名.txt;less 文件名.txt
9.复制文件: cp 源文件 目标文件 (-r:包含目录)
10.查找文件:(1)find (2)locate 命令名
11.链接:(1)建立hard链接:ln 来源文件 链接文件(-d:创建目录链接);(2)建立符号链接:ln -s 来源文件 链接文件
二.驱动挂载类
1.检查硬盘使用情况:df -T -h
2.检查磁盘分区:fdisk -l
3.挂载软硬光区:mount -t /dev/fdx|hdax /mnt/目录名
其中::modos--FAT16;vfat--FAT32;ntfs--NTFS;光驱--iso9660
支持中文名:mount -o iocharset=x /dev/hdax /mnt/目录名(其中:x=cp936或
挂载光驱:mount -t auto /dev/cdrom /mnt/cdrom
挂载ISO文件:mount -t iso9660 -o loop xxx.iso /path
4.解除挂载:umount /mnt/目录名
解除所有挂载:umount -a
5.建立文件系统:mkfs -t /dev/hdxx。其中:ftype:ext2、ext3、swap等
三.程序安装类
1.RPM包安装:(1)安装 rpm -ivh somesoft.rpm
(2)反安装(卸载) rpm -e somefost.rpm
(3)查询 rpm -q somefost 或 rpm -qpi somefost.rpm(其中:p未安装;i包含的信息)
(4)查询安装后位置:rpm -ql somefost.rpm
(5)升级安装:rpm -Uvh somesoft.rpm
(6)强制安装:rpm -ivh --nodeps somesoft.rpm 或 rpm -ivh --nodeps --force somesoft.rpm
2.源代码包安装:
查阅README
基本用法
(1)配置:解压目录下 ./configure
(2)编译:解压目录下 make
(3)安装:解压目录下 make install
3.src.rpm的安装
四.压缩解压类
tar命令:tar [-cxtzjvfpPN] 文件与目录 ….
tar命令参数:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!
因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成
『 tar -zcvPf tfile sfile』才对喔!
-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!