•    1 LINUX COMMAND
  •        1.1 cat
  •        1.2 ls
  •        1.3 echo
  •        1.4 sort
  •        1.5 awk
  •        1.6 df
  •        1.7 du
  •        1.8 fsck
  •        1.9 dumpe2fs
  •        1.10 rpm
  •            1.10.1 RPM校验
  •            1.10.2 RPM包汉语件提取
  •            1.10.3 源码包与RPM包的分裂
  •        1.11 yum
  •        1.12 head
  •        1.13 tail
  •        1.14 chmod
  •        1.15 chown
  •        1.16 systemctl
  •        1.17 chkconfig
  •        1.18 mount
  •            1.18.1 挂载命令格式
  •            1.18.2 挂载光盘
  •            1.18.3 卸载光盘
  •            1.18.4 挂载U盘
  •            1.18.5 NTFS u盘支持
  •        1.19 swap
  •        1.20 free
  •        1.21 Compression 压缩 command
  •            1.21.1 gzip
  •            1.21.2 bz2
  •            1.21.3 xz
  •            1.21.4 zip
  •        1.22 tar
  •            1.22.1 *.tar.gz
  •            1.22.2 *.tar.bz2
  •        1.23 locate
  •        1.24 find
  •            1.24.1 依据文件名查找:
  •            1.24.2 根据文件从属关系查找:
  •            1.24.3 按照文件的序列查找:
  •            1.24.4 依照文件的轻重缓急查找:
  •            1.24.5 根据时间戳查找
  •            1.24.6 依据权限来寻觅:
  •            1.24.7 处理动作:
  •        1.25 history
  •        1.26 vim
  •        1.27 useradd
  •        1.28 userdel
  •        1.29 id
  •        1.30 usermod
  •        1.31 groupadd
  •        1.32 su
  •        1.33 chage
  •        1.34 passwd
  •        1.35 gpasswd
  •        1.36 groups
  •        1.37 date
  •        1.38 hwclock
  •        1.39 ln
  •        1.40 SElinux
  •        1.41 crontab
  •        1.42 fdisk
  •    2 LINUX THE DOCUMENT
  •        2.1 用户和用户组管理
  •            2.1.1 /etc/passwd:用户音讯文件
  •            2.1.2 影子文件:/etc/shadow
  •            2.1.3 组新闻文件/etc/group
  •            2.1.4 组密码文件/etc/gshadow
  •            2.1.5 用户的家目录
  •        2.2 linux的极度规权限
  •            2.2.1 SUID
  •            2.2.2 SGID
  •            2.2.3 STICKY
  •        2.3 facl
  •        2.4 文件系统属性chattr权限
  •        2.5 sudo权限
  •        2.6 linux下查看帮衬命令
  •        2.7 linux根目录结构和文件系统
  •    3 SHELL
  •        3.1 shell更改

1.文书管理类命令:

ls -a :列出当前目录下的拥有文件,包涵以.头的涵盖文件;

ls -l 或 ll :列出当前目录下文件的详细音信;

pwd :查看当前所在目录的相对路经;

cd .. : 回当前目录的上超级目录;

cd – : 回上四回所在的目录;

cd ~ 或 cd :回当前用户的宿主目录;

cd ~用户名 :回到指定的宿主目录;

mkdir 目录名:创立一个索引;

mkdir -p : 递归式去成立一些嵌套目录;

rmdir 空目录名:删除一个空目录;

rm 文件名 文件名 :删除一个文件或者多少个文件;

rm -rf 非空目录名:递归删除一个非空目录下的一切,不让提式-f;

cat 文件名:一屏查看文件内容;

more 文件名:分页查看文件内容;

less 文件名:可控分页查看文件内容;

grep 字符 文件名:依据字符匹配来查看文件部分内容;

mv 路径/文件  /路经/文件:移动相对路经下的文本到相对路经下;

mv 文件名 新名称:在当前目录下化名;

cp /路径/文件  ./  :移动相对路经下的文书到当前目录下;

find 路径 -name “字符串”
:查找路经所在范围内满意字符串匹配的文本和目录;

ln 源文件 链接名 :创立当前目录源文件的硬链接;

ln /home/test/   /usr/test1   :在/usr下创设 /home/test的硬链接;

ln -s a b :创设当前目录下a的符号链接b;

touch file1 file2 :创建2个文件;

 

对不起,似乎有些标题党了。近日做服务器的热备,整理了些李纳斯工具的适用方法。看看还有不错的。

Description:”【中文中括号】”表示单一的表达,不在所属的标题之中,勿需与所在命令比较。 
Red coloured
words 表示重点,linux不一样文件类型以分歧颜色区分。本文档中出现的color与linux系统相对应。 
Blue coloured
words 为付出的例子。 :表示换行。 
linux the document出现的青色背景矩形方框为分歧给出的事例
color= #FF1493 区分RED标记.
    背景color=#778899描述或表达。
Typeface color=#FF6347区分标题

2.磁盘管理命令:

df :用于报告文件系统的总容量,使用量,剩余容量;

du -b /home :查看近年来/home目录的容量(k)及子目录的容量(k);

fdisk -l :查看系统分区新闻;

fdisk /dev/sdb :为一块新的SCSI硬盘举行分区;

mkfs.ext3 /dev/sdb1:为率先块SCSI硬盘的率先主分区格式化成

ext3的文件系统;

mkfs.ext2 /dev/sdb2 :格式化成ext2文件系统;

一、系统管理与安装

中央命令

  • sleep 500 暂停
  • ctrl + z 暂停
  • progress & 后台运行
  • jobs\bg\fg 查看后台职责
  • file 查看文件类型
  • cd – 上一个办事目录
  • pwd 查看当前工作目录
  • touch 创造文件或者更新文件创造时间
  • rm -i 交互式删除

正文档部分情节参考于网友个人博客以及各大搜索网站
禁止分享

3.挂载命令:

mount -t 文件系统类型(iso9660/vfat) 设备路径 访问路径;

mount -t vfat /dev/hda5 /mnt/cdrom :挂在首先个ide的第一个逻辑分区;

umount /mnt/cdrom :卸载/mnt/cdrom;

 

日子相关

  • date 查看时间
  • date +%Y–%m–%d 格式化显示
  • date -s “20:20:16” 修改时间
  • hwclock 查看硬件时钟
  • cal 查看日历
  • uptime 查看系统运作时刻

1 LINUX COMMAND

[root@pan
~]# root:登录的用户 @分隔符  pan主机名 ~当前路线

\:newline

4.文件权限命令:

chmod u+s file :为file的属主加上更加权限;                            
                    

chmod g+r file :为file的属组加上读权限;

chmod g+r file :为file的属组加上读权限;

chmod o+w file :为file的其余用户增进写权限;

chmod a-x file :为file的保有用户减去实施权限;

chmod 765 file
:为file的属主设为完全权限,属组设成读写权,其余用户具有读和施行的权柄;

chown root /home :把/home的属主改成root用户;

chgrp root /home :把/home的属组改成root组;

1、新闻浮现命令

出口查看

  • echo 输出指定的字符到正规输出
  • cat 输出指定文件到标准输出
  • head -n 指定行数
  • tail
    • -n 突显行数
    • -f 实时更新
  • more 只好向下翻页
  • less 上下翻页

1.1 cat

cat 由第一行开始突显文件内容
tac 从最后一行先导体现,可以看来 tac 是 cat 的倒著写!
nl 突显的时候,顺路输出游号!
-A:查询所有的情节囊括隐藏字符

5.用户管理命令:

useradd :创立一个新的用户;

groupadd :创立一个新的组;

Passwd 用户名:为用户创制密码;

Passwd -d 用户名:删除用户密码也能登录;

Passwd -l 用户名:锁定账号密码;

Passwd -u 用户名:解锁账号密码;

Passwd -S 用户名:查询账号密码;

Usermod -l 新用户名 老用户名:为用户改名;

Usermod -L 要锁定用户名:锁定用户登陆;

Usermod -U 解锁用户名:解锁用户登陆;

Usermod –u  501 用户名 :改变用户UID;

Userdel–r 用户名:删除用户所有;

Groupmod –n 新用户名 老用户名:为组改名;

Groupmod –g 501 组名:改变组GID;

Groupdel 组名 :删除组先,应删它的用户;

gpasswd -a 用户名 组名:增加用户到组;

id 用户名�:查用户新闻;

 

查阅硬件音讯

  • lspci -v 查看pci设备
  • lsusb -v 查看use设备
  • lsmod 查看加载的驱动

1.2 ls

-F:在各种输出项后扩张文件的品种标识符,具体意思:“*”表示拥有可进行权限的常备文书,“/”表示目录,“@”表示符号链接,“|”表示命令管道FIFO,“=”表示sockets套接字。当文件为常见文书时,不出口任何标识符;

6.软件管理命令:

./configure :编译前布署,必须在已解压目录下;

make :编译;

make install :安装编译好的源码包;

tar  -c创制包  –x释放包  -v突显命令进程–  z代表压缩包;

tar -tf  xxx.tar.gz:看压缩包的文本列表;

tar -zxvf xxx.tar.gz:解压缩;

rpm -ivh xxx:安装软件包并体现进程;

rpm -e xxx:删除具体的软件包;

rpm -ql xxx:查询软件包的文本列表;

diff file1 file2 :相比四个文件的区分;

ps -ef :查看进程;

ps -ef | grep xxx:查看指定进程;

top :查看动态进度;

ps -aux:查看静态进度;

pstree:查看进程树;

kill PID :终止某个PID进度;

# man & info  //帮助手册

关机重启

  • shutdown -h 关机
  • shutdown -h +10 10分钟后关机
  • shutdown -r 重启
  • shutdown -r now 现在重启
  • shutdown -h 20:30 20点30分关机
  • poweroff 关机
  • reboot 重启

1.3 echo

#echo [选项][出口内容]
-e:辅助反斜线控制的字符转换

控制字符 作用
\\ 输出\本身
\a 输出警告音
\b 退格键,也就是向左删除键
\c 取消输出行末的换行符,和“-n”选项一致
\e ESCAPE键
\f 换页符
\n 换行符
\r 回车键
\t 制表符,也就是Tab键
\v 垂直制表符
\0nm 按照八进制ASCII码输出字符,其中0为数字零,nnn是三位八进制数
\xhh 按照十六进制ASCII码表输出字符。其中hh是两位十六进制数。

echo -e “\e[1;31m abcd
\e[0m” 输出颜色
=30m 黑色,=31m 红色,=32m 绿色,
=33m 黄色,=34m 蓝色,=35m 洋红,
=36m 青色,=37m 白色。
#echo -e
ab\bc

 

归档、压缩

  • zip xxx.zip myfile
  • unzip xxx.zip

  • tar -xvf out.tar

  • tar -cvf out.tar myfile
  • tar -zcvf out.tar.gz myfile

1.4 sort

sort将文件/文本的每一行作为一个单位,相互比较,相比较原则是从首字符向后,不加参数时次第按ASCII码值举办比较,最终将他们按升序输出
-n :依据数值的从小到大排序;
-r :以相反的次第来排序; 
-u :忽略相同行使用-u选项或者uniq
文件名
-t
<分隔符>:指定排序时所用的栏位分隔字符;
-k 是点名需求排序的栏位(字母按ASCII排序,数字按从小到大。先数字后字母)
[root@mail
text]# sort -nrk 3 -t:
sort.txt  将CC列数字从大到小顺序排列:
eee:40:5.4
eee:60:5.1
ddd:20:4.2
ccc:50:3.3
bbb:10:2.5
aaa:30:1.6
AAA:BB:CC
澳门金沙国际 1

# man 命令 //展现相应命令的声援内容

查找

  • locate keyword 在数据库里寻找
  • updatedb 更新数据库

  • find . -name “aa” 查找文件名带aa的公文

  • find / -name *.conf 查找conf目录
  • find / -perm 777 查找文件格局为777的
  • find / -type d 查找文件夹

    find . -name “a” -exec cat {} \;

追寻名字里带a的文书,并且cat出来,注意前边的{}
;是必须的,且中间必须有空格

  • 找寻条件
  • -name
  • -perm
  • -user
  • -group
  • -ctime
  • -type
  • -size

1.5 awk

  1. awk ‘{print $1}’ 文件名 
    $1先是列,$2次之列,$NF最后一列.$(NF-1)倒数第二列)。
    现在是以文件的空格为分隔符那样打印
  2. awk -F “:” ‘{print $1}’
    /etc/passwd  -F指定分隔符,并打印文件首先列
    多列打印 [root@pan ~]# awk -F
    “:” ‘{print $2 $3}’ /etc/passwd 这样打印$2
    $3之间是没有分隔符 要加分隔符就是 awk -F “:” ‘{print
    $2″分隔符符号”$3}’ /etc/passwd $0表示所有文件

 

大规模目录及效果

  • /opt 目录安装大型软件
  • /proc 系统实时音讯,虚拟目录
  • /sbin 顶级用户才能举办的授命
  • /usr 一般的软件设置
  • /var 平时转移的音讯

1.6 df

文件系统查看命令
-a:呈现所有的文件系统新闻音讯,包含更加文件系统,如,/proc,/sysfs
-h:使用习惯单位突显容量,如KB,MB或GB等。
-T:展现文件系统项目
-m: 以MB为单位展现容量。
-k:以KB为单位出示容量,默许就是以KB为单位呈现容量。

du命令和df命令的区别
df命令是从文件系统考虑的,不光要考虑文件占用的空间,还要统计被命令或程序占用的空间(最常见的就是文件已经删除,但是程序并没有释放空间) 
du命令是面向文件的,只会计算计算机文件或目录占用的空间。

 

# arch  //显示当前系统系统布局

BASH

  • !! 重复执行前一个指令
  • !字符 重复前一个指令以『字符』初阶的一声令下
  • !num 按历史纪录重复执行
  • !?ea 重复执行以前包涵ea的命令
  • !-n 重复执行n个命令此前的可怜命令

  • ctrl + r 在历史命令中搜寻

  • esc . 按个esc然后再按一下. 选用上一个限令的参数

  • ? 匹配任意一个字符

    • 轻易一个字符
  • [0-9] 数字

  • [abc] 任意字符
  • [^abc] 除列表以外的字符

1.7 du

是透过搜寻文件来计算每个文件的大小然后增加,du能看出的文书只是一些脚下存在
的,没有被去除的。他盘算的大大小小就是眼前她觉得存在的有着文件大小的增加和 
-h :
以K,M,G为单位,提升信息的可读性。
-s :
统计总占用量,而不列出子目录和子文件的占用量。
ls -h是目录下文件名占用大小   du -h 是目录下拥有文件的尺寸
-k : 以KB(1024bytes)为单位输出。
-m : 以MB为单位输出。
-a突显每个子文件的磁盘占用量。默许只统计子目录的磁盘占用量。

 

VIM

:sh 到BASH环境中

ctrl+d 回到VIM

1.8 fsck

文件系统修复命令
fsck [选项] 分区配备文件名
-a:不突显用户提醒,自动修复文件系统
-y:自动修复。和-a功效一样,但是有点文件系统只辅助-y

# cal  //突显当前月份

分区

  • fdisk -l 列出硬盘音信
  • fdisk /dev/sdb 进行交互式分区
    • m 帮助
  • partprobe 更新一下分区表

分区机制有MBR和GPT三种
MBR 使用BIOS率领格局的PC设备,方今不帮忙2T上述,援救分区数量少于

分区表只有256字节音信

MBR最八只好创建4个主分区,主分区可以平素运用,
更加多分区使用扩大分区和逻辑分区

一个恢弘分区会占用一个主分区地方,伸张分区不能够一贯用

依照增加分区创设逻辑分区

最多扶助63个IDE分区,15个SCSI分区

GPT EFFI指点格局

1.9 dumpe2fs

显示磁盘状态命令
#dumpe2fs 分区设备名

 

文件系统

操作系统通过文件系统管理文件及数码,磁盘或者分区需要创制文件系统后才能被操作系统使用

  • mke2fs 创立文件系统
  • mke2fs -t ext4 /dev/sda3 创造文件系统类型
    • -b 文件块大小,4k
    • -c 建立的时候检查坏损块
    • -L 建立卷标
    • -j 建立文件系统日志
  • dumpe2fs 查看分区的文件系统新闻

  • fsck 检查并且修复损坏的文件系统

饱含日志的文件系统有较强的復苏性

1.10 rpm

rpm是Linux标准基础(LSB)包容发行版所使用的一种软件包管理器,用来对软件包举办低级处理rpm可以查询、安装、检验、升级和卸载软件包,它多数用以基于Fedora的序列,比如RHEL和CentOS
唯有安装和升级要加包全名。-ivh: -i:安装,-v:突显详细音讯,-h:展现速度,–nodeps:不检测依赖性。
-Uvh包全名:RPM包升级. 
-q :接软件包名字 #询问软件是不是早已设置
-q(查询query)
-qa :#查询所有曾经安装的RPM包。-a(所有all)
-qi :包名字#询问软件包详细新闻 -i
:展现软件包的连锁音信
-ql 包名:查询软件包安装位置 -l
:突显套件的文本列表。
-qf +系统文件名。查看一个文件是由哪位包安装的
-qip
包全名:查询未安装软件包新闻,必须在软件包目录举办查询。
-qR :查询软件包的依靠。
-qRp :查询未设置软件包的依赖必须在Packages目录查询。
-e 包名:卸载软件。

rpm -qf `which 程序名`  #返回软件包的全名    已安装的软件包
rpm -qif `which 程序名`  #返回软件包的有关信息
rpm -qlf `which 程序名`  #返回软件包的文件列表

 

# cal 2012  //展现二〇一二年的月历

 挂载分区

  • mount /dev/sdb1 /mnt/ 挂载到指定的地方
  • mount 查看已经挂载的分区
  • lsof 查看哪些文件被利用,被什么人打开
  • fuser -m /dev/sdb1 被哪个人利用

配置/etc/fstab 自动挂载

1.10.1 RPM校验

#rpm -V 已设置的包名
选拔:-V 校验指定RPM包中的文件。(verify)
[root@Tiger ~]#rpm -V httpd
S.5….T. c /etc/httpd/conf/httpd.conf
证实内容中的8个信息的具体内容如下:
S:文件大小是或不是改变;
M:文件的档次或文件的权杖(r w
x)是不是被改动;
5:文件MD5校验和是不是变动(可以视作文件的情节是不是改变);
D:设备的主,从设备号是还是不是变动;
L:文件路径是或不是改变;
U:文件的属主(所有者)是或不是改变;
G:文件的属组是还是不是变动;
T:文件的改动时间是还是不是改变;
文件类型:
c :配置文件(config file)
d :普通文档(documentation)
g :”鬼”文件(ghost
file),很少见,就是该公文不应当被那些RPM包包蕴
l :授权文件(license file)
r :描述文件(read me)

 

扶持音讯

  • ls –help
  • ls -h
  • man ls
  • man -k 关键字查找命令
  • info 更详细

1.10.2 RPM包粤语件提取

#rpm2cpio
包全名 | \ cpio -idv .文件绝对路径
 反斜杠:换行的效益。
rpm2cpio:将rpm包转换为cpio格式的一声令下。
cpio:是一个标准工具,他用于创制软件档案文件和从档案文件中提取文件。
#cpio 选项 < [文件|设备]
选项: -i:copy-in模式,还原
   -d:还原时自动新建目录
   -v:突显还原进度
#rpm -qf
/bin/ls 查询ls命令属于哪个软件包 
#mv /bin/ls /tmp
造成ls命令误删除的假象
#rpm2cpio
/mnt/Packages/coreutils-8.4-37.el6.x86_64.rpm | cpio -idv ./bin/ls
提取RPM包中ls命令到当前目录的/bin/ls下
cp /root/bin/ls /bin 把ls命令复制到/bin目录,修复文件丢失。

# cal 10 2012  //显示二〇一二年五月的月历

用户

root 用户 0

系统用户 1-499

普通用户 500之上

1.10.3 源码包与RPM包的界别

设置在指定地点当中,一般是/usr/local/软件名/。
RPM包安装的劳动可以动用系统服务管理命令(service)来管理,例如RPM包安装apache的开行方法是:
/etc/rc.d/init.d/httpd start:
绝对路线启动服务。 
澳门金沙国际 ,service httpd start
源代码保存位置:/usr/local/src/
软件安装地方:/usr/local/
怎样规定安装进度报错:安装进程截止;并出现error、warning或no的唤起。
源码包安装进程:
下载源码包;解压缩下载的源码包;进入解压缩目录。

CRT中sftp里面要设置远程的路径和本地的路径: 
cd 1 进入远程连接到的Linux的1目录
lcd \text 本地的c盘text目录
get abc.c 从远程目录得到文件abc.c放入本地目录text
put a11.txt 从Windows上将文件a11.txt传入linux

源码包配置:
./configure软件配置与反省

  1. 概念必要的功力选用。
  2. 检测连串环境是还是不是顺应安装需要。
    3.
    把定义好的意义选项和检测系统环境的音信都写入Makefile文件,用于后续的编制。
    ./configure –prefix=/usr/local/apache2设置路径
    详情参见INSTALL
    源码包的卸载:
    不必要卸载命令,直接删除安装目录即可,不会残留任何垃圾文件。
    本子安装包:
    本子安装包并不是单独的软件包类型,常见安装的是源码包。
    是人们把安装进度写成了机动安装的台本,只要举办脚本,定义简单的参数,就足以做到安装。
    卓殊接近于Windows下软件的设置方式。

 

 

连锁文书

  • /etc/passwd 密码
  • /etc/shadow 用户密码
  • /etc/group 保存组

1.11 yum

可见从指定的服务器自动下载RPM包并且安装,可以自行处理珍视性关系,并且几遍安装具有信赖的软体包,无须繁琐地一次次下载、安装。
remove :删除指定的rpm软件包; yum -y
remove 软件包名
yum update +包名 :升级。 禁用
yum grouplist:列出所有可用的软件组列表;
yum groupinstall
软件组名:安装指定的软件组,组名可以由goruplist查询出来;
yum groupremove:卸载指定软件组;

配置yum仓库:     
  [base]  
  name=centos  
  baseurl=file:///mnt/  
  enabled=1  
  gpgcheck=0 

 

# cal -y  //呈现整年日历

现阶段用户命令

  • whami 当前报到用户
  • who 哪些用户
  • w 有怎么样用户在干什么

1.12 head

head
用来体现档案的先导至正式输出中,默许head命令打印其相应文件的初阶10行 
-n:突显文件的前n行 head -n 5 a.txt 突显文件的前5行
-c突显文件前n个字节 head -c 20 a.txt
head -c -32 log2014.log文件的除外最后n个字节以外的始末
head -n -6 log2014.log
输出文件除了最终n行的全部内容

 

用户操作

  • useradd 添加用户
  • usermod 修改用户
  • userdel 删除用户

1.13 tail

主要用于从指定点起来将文件写到标准输出。很两人喜好使用tail -f
来监督日志文件。
-f该参数用于监视文件的增高 tail -f filename
监视filename文件的尾巴内容(默许10行,相当于增添参数 -n
10),刷新显示在显示器上。退出,按下CTRL+C。
-n从指定行职分读取指定文件。tail -n 20 filename 彰显filename最终20行。
-c突显文件最终n个字节 tail -c 20 a.txt

# cat /etc/issue  //看当前系统发行版本

用户组操作

  • groupadd 用户组添加
  • groupmod 用户组修改
  • groupdel 用户组删除

1.14 chmod

chmod命令用来改变文件或目录的权力,文件或目录权限的支配分别以读取、写入、执行3种一般权限来分别,另有3种独特权限可供役使,设置格局选取文字或数字代号皆可。符号连接的权限不能转移,倘使用户对符号连接修改权限,其转移会成效在被接连的固有文本
-f :若该公文权限无法被改变也绝不突显错误音信
-R :对脚下目录下的享有文件与子目录进行同样的权杖变更(即以递回的方式挨个变更)
r=读取属性 值=4  w=写入属性 值=2  x=执行属性 值=1

 

权限

限定对特定文件的读、写、执行,每一个文件都有一定的权位
经过权限与运行它的用户权限相关

目录必须有x权限,否则无法查看内容

UGO: user group other

每多个一组r w x

rwxrwxrwx 三个一组

1.15 chown

变动某个文件或目录的主人和所属的组
Grammar:chown USER:GROUP 对象
chown USER 对象  chown :group 对象

# cat /etc/redhat-release //看操作系统版本(redhat和centos)

修改权限

  • chown 修改拥有者
  • chgrp 修改所有组
  • chmod 修改权限

  • u\g\o代表用户、组别的

  • a代表享有
  • +-扩展或者去除
  • r\w\x 三种权限

chmod g-x xxxxx 减去xxxxx的用户组执行权限

1.16 systemctl

systemctl命令是系统服务管理器指令,它事实少将 service 和 chkconfig
那七个指令组合到共同
澳门金沙国际 2

 

网络

32bit分为网络部分和主机部分
子网掩码用来确定网络部分的位数

  • ifconfig -a 查看所有接口
  • ifconfig eth0 查看特定接口

  • ifup eth0 启用接口

  • ifdown eth0 禁用接口

  • setup 配置互联网音讯

1.17 chkconfig

1.服务概述: 在linux操作系统下,经常需要创建一些服务,这些服务被做成shell脚本,这些服务需要在系统启动的时候自动启动,关闭的时候自动关闭。 将需要自动启动的脚本/etc/rc.d/init.d目录下,然后用命令chkconfig –add filename将自动注册开机启动和关机关闭。实质就是在rc0.d-rc6.d目录下生成一些文件连接,这些链接连接到/etc/rc.d /init.d目录下指定文件的shell脚本。

–list :列出所有系统服务
–add httpd:增加httpd服务。
–del httpd:删除httpd服务。
–list mysqld:列出mysqld服务设置意况
–level 35 mysqld on:设定mysqld在等级3和5为开机运行服务,–level
35意味着操作只在等级3和5履行,on表示启动,off代表关闭。
chkconfig mysqld
on:设定mysqld在各等级为on,“各阶段”包罗2、3、4、5品级。

chkconfig 设置是当前不生效,linux重启后才生效. service 设置是即时生效,linux关机重启后设置失效

# cat /etc/shells  //查看shell版本

互连网排查相关命令

  • host 查看域名对应ip
  • dig 查看域名音信
  • ip route 查看路由表
  • traceroute 查看到达目的地点经过的路由
  • mtr 互联网质量测试

1.18 mount

询问与机关挂载(Auto
Mount)澳门金沙国际 3
#mount [-l]
询问系统中已经挂载的设备,-l会体现卷标名称
#mount -a
依照配置文件/etc/fstab的情节,自动挂载

 

管道和重定向

  • STDIN 0
  • STDOUT 1
  • STDERR 2

    STDOUT 重定向到文件【覆盖】

    STDOUT 重定向到文件,追加
    2> STDERR 重定向到文件
    2>&1 STDERR与STDOUT结合
    < 重定向到STDIN | 一个指令的STDOUT作为另一个发令的STDIN 2>/dev/null 把错误重定向到null设备

1.18.1 挂载命令格式

#mount [-t 文件系统] [-L卷标名]
[-o特殊选项] 设备文件名 挂载点
-t
文件系统:参与文件系统类型来指定挂载的品种,可以ext3、ext4、iso9660等文件系统
-L
卷标名:挂载指定卷标的分区,而不是设置配备文件名挂载
-o 特殊选项:可以指定挂载的额外选项。
澳门金沙国际 4
#mount -o
remount,noexec /home那里的/home是df可以查看到的分区重新挂载/home分区,并运用noexec权限
#cd /home 
#vi hello.sh

#!/bin/bash
echo "i love you"

#chmod 755 
#./hello.sh 会展现没有权力履行 
#mount -o remount,exec /home
记得改回来,要不然会潜移默化系统启动的。

 

# cat /etc/services | more  //查看种种服务的port

安装删除包

  • rpm -i xxx.rpm 安装
  • rpm -e xxxx 卸载
  • rpm -U xxx 升级
  • rpm -ivh 互联网安装
  • rpm -qa 设置的列表
  • rpm -ql xxx 安装的东西

  • yum search

  • yum list (all | installed | updates)
  • yum info packagename

1.18.2 挂载光盘

#mkdir /mnt/cdrom 建立挂载点
#mount -t iso9660 /dev/cdrom
/mnt/cdrom 挂载光盘
#mount /dev/sr0 /mnt/cdrom

 

文本处理工具

  • grep
    • -i 忽略大小写
    • -n 显示行数
    • -v 不带关键字的行
    • -Ax 之后的x行
    • -Cx 此前之后的x行
    • -Bx 之前的x行
  • cut
  • -d 切分符号
  • -f 呈现的列
  • -c 基于字符举办切割

    cut -d: -f1 xxx 对xx文件进行cut -c2-6 xxx 基于2到6进展切割

  • wc

  • -l 只计行数
  • -w 只讲单词
  • -m 字符
  • -c 只计字节数

  • sort 排序

  • -r 倒序
  • -u 删除重复行
  • -tc 使用c举办划分为列举办排序

  • uniq 删除重复相邻行

  • diff 相比较文件

  • -b 忽略空格数量改变
  • -u 生成patch文件

  • aspell 拼写检讨

1.18.3 卸载光盘

#umount设备文件名或挂载点
#umount /mnt/cdrom

# cat /proc/cpuinfo  //显示CPU信息

实在例子

tr -d 'apple' < hosts 删除hosts文件里的apple
tr 'a-z''A-Z' < hosts 大小写转换

sed 's/str/newstr/g' hosts 替换hosts中的str
sed '1,50s/str/newstr/g' hosts 只替换1到50行
sed -e 's/linux/unix/g' -e 's/xxx/xsdjlfsjdf' hosts  连续处理两个替换

sed -f command hosts 把替换的命令放到command文件里

ps aux | grep xxx  查看某个进程

lsof -i:portnum 查看端口被哪个进程占用

kill -9 pid 杀掉某个进程

killall program 杀掉指定名称的所有进程

1.18.4 挂载U盘

fat32格式:

#fdisk -l 查看U盘设备文件名
#mount -t vfat /dev/sdb1 /mnt/usb/
注意:fat16分区识别为fat,fat32分区识别为vft。linux默认是不支持NTFS文件系统的

 

 

1.18.5 NTFS u盘支持

下载NTFS-3G插件 
解压 tar -zxvf filename
安装 ./configure && make && make
install
fdisk -l查看linux的U盘分区:sdc1
#mount -t ntfs-3g /dev/sdc1
/mnt/usb/ #mkfs -t ext4 /dev/sdb1/
格式化分区,扩张分区不可格式
#mkdir
/disk1 起家挂载点
#mount /dev/sdb1 /disk1 挂载

# cat /proc/cpuinfo | grep flags | grep ‘ lm ‘ | wc -l  //结果大于0,
表明帮忙64位乘除。lm指long mode, 帮助lm则是64位

1.19 swap

新增swap空间:free查看swap大小
增产一个分区,改分区号82,保存退出
格式化:mkswap /dev/sdb6 
加入swap分区:swapon /dev/sdb6
收回swap分区:swapoff
/dev/sdb6 可是每一回开机都要手动挂载两回,能够写入fatab开机自动挂载
vi /etc/fstab

/dev/sdb6 swap swap defaults 0 0

 

# getconf LONG_BIT  //查看CPU位数(32 or 64)

1.20 free

来得当前系统未接纳的和已选用的内存数目,还足以体现被基本使用的内存缓冲区。 
-b :以Byte为单位彰显内存使用情形;
-k :以KB为单位出示内存使用情形;
-m :以MB为单位出示内存使用情状;
澳门金沙国际 5
total:去掉为硬件和操作系统保留的内存后剩余的内存总量。许多人意料之外自己的统计机安装了共计8G的内存,可是来得总共只有七点几G的,现在应当没什么思疑了把,不管Linux仍然Windows都会有一对内存是保留给硬件和操作系统的!
userd:当前已利用的内存总量。
free:空闲的或可以应用的内存总量
shared:共享内存大小,首要用来进度间通讯
buff(buffers):缓冲,紧要用于块设备数据缓冲(磁盘缓存大小),例如记录文件系统的metadata(目录、权限等等音信)。是指在写入数据时,先把分散的写入操作保存到内存当中,当达到一定水准再汇总写入硬盘,减小了磁盘碎片和硬盘反复寻道,加快了多少的写入进程。
cache:缓存,主要用于文书内容缓冲,是指把读取出来的数额保存在内存当中,当再度读取时,不用读取硬盘而直接从内存当中读取,加速了多少的读取进程。
available:可以运用的内存总量.

 

1.21 Compression 压缩 command

# cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c  //查看CPU型号

1.21.1 gzip

gzip filename压缩 *.gz :”后缀名” 
gzip -d filename.gz gunzip filename.gz 解压缩 
不解压查看:zcat filename.gz

 

1.21.2 bz2

bzip2 filename压缩 *.bzip2:”后缀名”
bzip2 -k filename 保存源文件裁减
bzip2 -d filename.bz2 bunzip2 filename.bz2解压缩 
不解压查看:bcat filename.bz2

# cat /proc/cpuinfo | grep physical | uniq -c  //查看实际有几颗CPU

1.21.3 xz

xz filename压缩 .xz:”后缀名” 
xz -d filename.xz 解压缩
unxz -k filename.xz 保存源文件解压

 

1.21.4 zip

zip默许保存源文件,可以减掉目录
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
-r :递归处理,将指定目录下的持有文件和子目录一并拍卖;

# getconf LONG_BIT  //展现当前CPU运行在怎么样形式下

1.22 tar

-c: 建立压缩档案 
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的

tar cf file.tar files
将一个或四个文件、目录打包到tar包。
tar rf file.tar file
将文件file添加到tar包中。
tar uf file.tar file
将文件file更新tar包中相应的文书。
tar tf file.tar 查看tar内容。
tar xf file.tar 解压tar包。 
-z:有gzip属性,即须要用 gzip 压缩
-j:有bz2属性,即需求用 bzip2 压缩 
-v:显示处理进度 
-C:指定解压输出目录 tar zxvf test.tar.gz -C test
-f:
使用档案名字,切记,那么些参数是终极一个参数,前面只好接档案名

-Z:有compress属性的
-O:将文件解开到正式输出 
格式:tar Zcf file.tar.Z files
将一个或四个文件、目录压缩到file.tar.Z中。必要安装了ncompress软件包才行。
解压.tar.Z文件。格式:tar Zxf file.tar.Z  
归档并缩减:使用时间格式打包数据:
tar zcf etc-$(date +%F).tar.gz /etc   tar zcf
etc-`date +%F`.tar.gz /etc

 

1.22.1 *.tar.gz

归档并调用gzip压缩 tar -zcf 新文件名.tar.gz /etc/passwd
/var/log/messagages
调用gzip解压缩并拓展归档 tar -zxvf filename.tar.gz

# cat /proc/devices 
//列出字符和块设备的主设备号,以及分配到这一个设备号的设施名称

1.22.2 *.tar.bz2

归档并调用bzip2压缩 tar -jcf 新文件名.tar.bz2 /etc/passwd
/var/log/messages
调用bzip解压缩并开展归档 tar -jxf filename.tar.bz2

 

1.23 locate

其艺术是先成立一个囊括系统内装有档案名称及路径的数据库,之后当寻找时就只需询问那几个数据库,而毋庸实际深切档案系统里面了。 
之所以您要明白:

  1. locate的快慢比find快,因为它并不是真的查找文件,而是查数据库
    2.
    locate的搜索并不是实时的,而是以数据库的换代为准,一般是系统和谐维护
  2. 晋级数据库命令:locate — u 
    CentOS系统找不到locate命令,原因是系统中没有设置 mlocate 这么些包,然后更新数据库:updatedb 。 
    -c :只显示找到条目标号码
    -b :匹配唯一的门径名称的中央文件名
    -r :基于基本正则表达式进行匹配操作

# cat /proc/filesystems  //看文件系统

1.24 find

实时搜索工具,通过遍历指定起先路径下文件系统层级结构达成文件查找:

 

1.24.1 根据文件名查找:

-name “pattern”
-iname “pattern” 扶助glob风格的通配符:
*,?,[],[^]  i忽略大小写
-regex
pattern :基于正则表达式查找文件,匹配整个路径而非其名;

# cat /proc/interrupts  //突显暂停

1.24.2 依照文件从属关系查找:

-user USERNAME:查找属主指定用户的兼具文件;
-goup GROUPNAME:查找属组指定组的保有文件;
-uid UID:查找属主指定的UID的享有文件;
-gid GID:查找属组指定的GID的具备文件;
-nouser :查找没有属主的公文;
-nogroup :查找没有属组的公文;

 

1.24.3 根据文件的花色查找:

-type TYPE :按name查找 
f:普通文书  d:目录   l:符号链接文件   b:块设备文件   c:字符设备文件
p:管道文件 s:套接字文件   【 ./可执行文书 】
构成测试:   与:-a,默认组合逻辑;  或:-o;  非:-not,! 
!A -a !B =!(A -o B)      !A -o !B =!(A -a
B)    例:查找tmp目录下不包含“fstab”的字符文件   find
/tmp -not -iname “*fstab*”  

# cat /proc/ioports  //看设备io端口

1.24.4 依据文件的轻重缓急查找:

-size [+|-]#UNIT 常用单位:K,M,G 
例:size 10K filename,大小表示 (#-1,#]
  9K<filename<10K 
  size -10K filename,大小表示[0-UNIT-1] 
  size +10K filename,大小表示(#,∞)

 

1.24.5 按照时间戳查找

以“天”为单位: 
# [#,#-1]距现在终结过去几天访问过文件。
-#:(0,#) 几天做客过文件。
+#(oo, #-1] 几天前至-oo拜会过的具备文件
-atime

显示的是文件中的数据最后被访问的时间,比如系统的进程直接使用或通过一些命令和脚本间接使用。

-mtime

显示的是文件内容被修改的最后时间,比如用vi编辑就会发生改变。

-ctime

显示的是文件的权限、拥有者、所属的组、链接数发生改变时的时间。当然当内容改变时也会随之改变。

以“分钟”为单位:
-amin  -mmin  -cmin 同上

支付少不了那几个的,Linux常用命令大全。 

# cat /proc/loadavg  // 看系统负荷

1.24.6 按照权限来寻觅:

-perm [/|-]mode     例:find ./ -perm 644  
mode:精确权限匹配;
/mode :任何一类用户(u,g,o)的权能中的任何一位(r,w,x)符合条件即满足9位权限以内存在“或”关系;
-mode :每一类用户(u,g,o)的权限中的每一位(r,w,x)同时符合条件即满足9位权限以内存在”与”关系; 
例: 440属于/666有读的权柄 find./ -perm /666
符合这一查找

 

1.24.7 处理动作:

-print :输出至正规输出:默许的动作; 
-ls :类似于对查找到的公文实施“ls
-l”命令,输出文件的详细新闻
-delete :删除找到的文书
-fls :/PATH/TO/SOMEFILE:把查找到的有所文件的长格式信息保存至指定文件中; 
-ok COMMAND {}
\; :对查找到的每个文件举行由COMMAND表示的指令;每回操作都由用户展开确认; 
-exec COMMAND {} \;
:对查找到的每个文件实施由COMMAND表示的指令; 
例:find ./ -perm /002 -exec mv {} {}.txt \;
专注: find传递查找到的文件路径至前边的一声令下时,是先物色出富有符合条件的公文路径,并四回性传递前边的指令;不过有些命令不可以接受过长的参数,此时施行命令会败北;另一种格局可避开此题材:find
| xargs command
:
1、 查找/var目录下属主为root,且属组为mail的所有文件或目录;
find /var -user root -a -group mail -ls

2、 查找/usr目录下不属于root,bin或hadoop的持有文件或目录;用三种办法;

find /usr -not -user root -a -not -user bin -a -not -user hadoop
find /usr -not \( -user root -o -user bin -o -user hadoop \) -ls

 

3、 查找/etc目录下近来七天内其内容改动过,且属主不是root也不是hadoop用户的公文或目录;
find /etc -mtime -7 -a -not -user root -a -not -user hadoop
find /etc -mtime -7 -a -not \(-user root -o -user hadoop\)
-ls

4、查找当前系统上未曾属主或属组,且目前七日内曾今被访问过的文件或目录; 
find ./ -nouser -o -nogroup -ls
即使有文件属于可寻找项,不过加ls选项最终会无法输出彰显 加了-o(或标准)和ls后只会对后一半见效。

需要→ find ./ \( -nouser -o -nogroup\) -atime -7 -ls

 

5、 查找/etc目录下领先1M且项目为常见文书的兼具文件;
find /etc -size +1M -ls
find /etc -size +1M -type f -exec ls -lh {} \;

6、 查找/etc目录下所有用户都没有写权限的文本;

find /etc -not -perm /222 -type f -ls 至少有一个用户 有

7、 查找/etc目录至少有一类用户没有举行权限的文书;
find /etc -not -perm -type f -111

8、 查找/etc/init.d目录下,所有用户都有实践权限,且其余用户有写权限的有所文件;

find /etc -perm -111 -a -perm -002 -ls
find /etc -perm -113 -ls -type f

 

# cat /proc/meminfo  //看内存新闻

1.25 history

#history
[选项][野史命令保存文件]
-c:清空历史命令
-w:把缓存中的历史命令写入历史命令保存文件
~/.bash_history

历史命令默认保存1000条,可以在环境变量配置文件/etc/profile中修改

正史命令的调用: 1. 接纳上、下箭头调用从前的历史命令

  1. 使用”!n”重复执行第n条历史命令
  2. 使用”!!”重复执行上一条命令
  3. 使用”!字符串”重复执行最终一条以该字符串开始的指令。

 

1.26 vim

:.,$y 复制当前行到末尾行
:! 调用系统命令,可临时执行
使vim设置永久生效:vim /etc/vimrc
把设置写到那一个文件的最后,对所有账户生效
set nu 显示行号   set nonu 打消行号
set ic 不区分轻重缓急写 set noic 裁撤不区分轻重缓急写
set ts=4 设置tab键长度
set sw=4 设置自动缩进的tab键长度 
vim /root/.vimrc
也得以把设置写到此文件,只对root生效 
vim字符替换:

:%s/this/that 每一行的第一个this被替换成that 
:%s/this/that/g 将文本中所有的this替换成that %从每一行的开头到结尾 s表示替换 
:1,5 s/old/new/g #替换第一行到第5行中所有匹配的内容

字符操作:u打消上一步 
i当前布置,I行首插入。
a当前字符插入(光标后一位插入),A行尾插入。 
o表示:本行回车到下一行插入,O上一行插入。
x删除光标所在字符,X向前剔除一个字符。
dd删除光标所在的行,dG删除光标所在开端行到文件尾的具备字符。 
J合并两行。 
行操作:home
键或^键行首,$或end行尾
dd删除一行Ndd(删除本行与下一行)。
yy复制一行,Nyy复制n行,p将复制行粘贴,p向光标下一行粘。(N表示数字)
词操作:dw删除一个词,y+$复制至行尾。y+^复制至行首。yw复制一个词。:.,$y 复制当前行到最后

v模式:编程的时候需要进行多行注释: (删除是要将光标移到这个词的行首,如果光标不在行首则删除光标之后的字母。) 块操作:D或d+$删除至行尾 d+^删除至行首
1、注释:ctrl+v进入列编辑模式 
2、向下或向上移动光标 (ctrl L 向下全部选中)
3、把需要注释的行开头的开头标记起来
4、然后按大写的I
5、再插入注释符,比如“#”
6、再按Esc,就会全部注释了
删除多行注释:按ctrl+v进入列编辑模式;向下或向上移动光标;选中注释部 分然后按d,就会删除注释符号。

vim编辑器: :wq 可以保留外 :w
+路径+文件名间接保存在某个地方和重命名:w
路径/文件名
ZZ 保存退出  :x 保存退出  :!命令:!ifconfig 
vi的行定位作用:
ctrl+f 向前卷动一个显示器
ctrl+b 向后卷动一个显示屏
G 到文件最后一行行首
:$ 到文件最后一行行尾
mG 到指定行,m为目标行数 或者mgg 
set nu 展现行号 
/内容 查找指定内容 
n 查找下一个
N 回到前一个

寻找上一个

/^字符串 查找以字符串开始的行
/字符串$ 查找以字符串结尾的行 
/a.b 查找字符串a任意字符b vim替换 
r 替换当前光标字符 
:r 文件名 在光标当前位置载入另一个文件

 

# cat /proc/mounts  //彰显当前系统所设置的文件系统音信

1.27 useradd

useradd命令用来树立用户帐号和创设用户的开局目录,使用权力是极限用户.
-u :uid指定用户ID
-d:指定用户登入时的启始目录。
-g:指定用户所属的群组 
-G:指定用户所属的增大群组。 
-s:指定用户登入后所选用的shell。
tom 用户的登陆 shell 为非交互式 shell  #useradd –s /sbin/nologin tom 
-e :指定账号的有效期限,缺省表示永久有效
useradd user1——创造用户user1; 
useradd –e 12/30/2009 user2——创设user2,指定有效期2009-12-30到期
-c:用户表达,手工指定用户的认证,添加表明有Spacebar时要加” “

用户默认值文件:/etc/defalut/useradd
1. GROUP=100 :用户默认组ID (公有模式)
2. HOME=/home :用户家目录
3. INACTIVE=-1 :密码过期宽限天数(shadow文件7字段)
4. EXPIRE=no value :密码失效时间(8字段)
5. SHELL=/bin/bash :默认的shell
6. SKEL=/etc/skel :模板目录
7. CREATE_MAIL_SPOOL=yes :是否建立邮箱
/etc/login.defs
PASS_MAX_DAYS 999 :密码有效期(5字段)
PASS_MIN_DAYS 0 :密码修改间隔(4字段)
PASS_MIN_LEN 5 :密码最小5位(PAM)
PASS_WARN_AGE 7 :密码到期警告(6)
UID_MIN 500 :最小和最大UID范围
GID_MIX 60000
ENCRYPT_METHOD SHA512 :加密模式

 

 

1.28 userdel

删去用户userdel [-r] 用户名
-r:删除用户的同时删除用户家目录

# free  //看内存音信

1.29 id

查看用户id:#id 用户名
询问用户的UID,伊始组ID,附加群组ID

 

1.30 usermod

usermod命令用于修改用户的基本新闻。usermod命令不容许你转移正在线上的使用者帐号名称。当usermod命令用来改变user
id,必须认同那名user没在微机上执行其余程序.
-g <群组> 修改用户所属的原始群组。
#usermod -g
root username 
-G
<群组> 修改户所属的附加群
-a
-G 无限扩展到附加组,可具有三个叠加组. 将a1添加附加组user3 #usermod -a -G user3 a1 
-c:修改用户的印证usermod -c “test user” username

当某一用户拥有多个附加组之后,使用usemod -G会修改附加组,则多个组消失掉变成唯一当前修改的附加组.

 

1、将 newuser2 添加到附加组 staff  #usermod -G staff newuser2 
-l
<帐号名称> 修改用户帐号名称。 
2、修改 newuser 的用户名为 newuser1 #usermod -l newuser1 newuser 
-L 锁定用户密码,使密码无效。
-U 解除密码锁定。
3、锁定账号 newuser1 #usermod -L newuser1 
4、解除对 newuser1 的锁定 #usermod -U newuser1 
-d 改变用户家目录,常与-m结合使用 
-m 将主目录的内容移动到新目录 
usermod -m -d /home/user2 -uid
username 若使用报错使用以下命令: 
cat /dev/null > /var/run/utmp

清空此文件。utmp是一个文件,除了utmp程序你不能编辑这个文件,删掉他的话,当前登陆信息都会丢失。它就好比系统开启后它会把系统成员的信息迅速的记录下来,过一段时间它就不再记录,确认系统的用户配置就是这样了,这个文件在每次机器reboot起来后都会重新创建。

 

# dmidecode  //查看内存型号

1.31 groupadd

-gGID: 修改组ID
-n新组名: 修改组名

 

1.32 su

su: [选项] 用户名
:选项只使用”-“代表有关用户的环境变量一起切换。

可使用env命令查看

-c:仅执行一次命令,而不切换用户地点
#su – root
-c “useradd
user3″不切换成root,不过实施useradd命令添加user1用户。

 

# /usr/platform/sun4u/sbin/prtdiag -v  //查看内存音讯(unix)

1.33 chage

修改用户密码状态chage 
#chage [选项] 用户名 
-l:列出用户的事无巨细密码状态
-d
日期:修改密码最终一次变动日期(shadow3字段)

-m 天数:五遍密码修改间隔(4字段)
-M 天数:密码有效期(5字段)
-W 天数:密码过期前警告天数(7字段)
-I 天数:密码然后宽限天数(7字段)
-E 日期:账号失效时间(8字段)
#chage -d 0
username那几个命令其实是把密码修改日期归0了(shadow第3字段),这样用户若是一登录就要修改密码。第三字段是指密码最终一遍修改时间的日子。1970年11月1号到现在涂改密码的光阴戳。若是第3字段改为0,系统会认为用户并未改动过操作密码,那么当此用户借使登录种类就会唤起要修改密码,才可正常使用。

 

1.34 passwd

-S:查询用户密码的密码状态,仅root用户可用。
-l:暂时锁定用户。仅root用户可用。
-u:解锁用户。仅root用户可用。
–stdin:可以通过管道符输出的数量作为用户的密码。 # echo “123” |
passwd –stdin user

# cat /proc/modules  //看当前系统模块

1.35 gpasswd

-d :从组删除用户 gpasswd -d username groupadd 
-a :添加用户到组(附加组),同时保留从前的组

添加用户到某一个组可以使用 usermod -G groupB userA 这个命令可以添加一个用户到指定的组,但是以前添加的组就会清空掉. 所以想要添加一个用户到一个组,同时保留以前添加的组时,请使用gpasswd这个命令来添加操作用户

-A :指定组内管理员 gpasswd -A username groupname

 

1.36 groups

groups username 显示linux用户所属的组

# cat /proc/net/dev 显示互联网适配器及计算

1.37 date

date 依照给定格式显示日期或设置系统日期时间。print or set the system
date and time 指令所在路径:/bin/date  #date “+%Y-%m-%d
%H:%M:%S” 
-d:突显字符串所指的日期与时间。字符串前后必须抬高双引号;#date -d now
#date -d ‘next monday’  #date -d yesterday +%Y-%m-%d
-r:显示文件最终修改时间 
-s:设置系统时间 #date -s “2018-11-11 00 00 00”

在使用date -s这个命令修改时间后,系统重启后就失效了,因此为了将这个时间永久生效,需要将修改的时间写入CMOS,查看CMOS的时间:#clock –r 。 将当前系统时间写入CMOS中去#clock –w

在生养环境中常使用时间格式打包数据:#tar zcvf etc-$(date +%F).tar.gz /etc
#tar zcvf etc-`date +%F`.tar.gz
/etc 
澳门金沙国际 6

 

1.38 hwclock

查阅硬件时间
安装硬件时间hwclock –set –date=”07/07/06 10:19″ (月/日/年
时:分:秒)
硬件时间和体系时间的联手:重新启航系统,硬件时间会读取系统时间,完成共同,不过在不重复起动的时候,要求用hwclock命令完结同台。
硬件时钟与系统时钟同步: #hwclock
–hctosys(hc代表硬件时间,sys代表系统时间)
系统时钟和硬件时钟同步:(让系统的时光共同到硬件时钟)#hwclock –-systohc

# cat /proc/partitions  //看当前系统分区

1.39 ln

ln:链接命令
硬链接:复制并同步 ln /etc/passwd /tmp/password
软链接:类似windows下的神速格局 ln -s
/etc/passwd /tmp password
软链接和硬链接的分别:
1.成立命令不相同: ln -s /root/ruan.txt
/root/桌面/ ln /root/ying.txt /root/桌面/
2.软链接创制时务必利用相对路径(链接和源文件在同一目录下,能够相对路径)硬链接创制时得以绝对路径也可相对路径
3.软链接的源文件不可以分开,重命名,删除 硬链接的源文件可以划分,重命名,删除
4.软链接的链接文件权限永远是777,即使将链接文件的权能举行了改动,也不会暴发变化,变得是源文件的权杖 硬链接的链接文件权限永远和源文件一律
5.软链接的链接文件的inode号和源文件分化 硬链接的链接文件的inode号和源文件一律
6.软链接可以对目录操作 硬链接不辅助对目录操作,是对准于上层来说,底层是可以针对于目录做硬链接的,通过代码就可以达成
7.软链接可以跨文件系统 硬链接不可以跨文件系统,因为硬链接是存放在源文件的同一个block上边的

 

1.40 SElinux

安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux
内核模块,也是 Linux 的一个安全子系统。SELinux
主要职能就是最大限度地减小系统中服务过程可访问的资源(最小权限原则)
DAC:在尚未采取SELinux
的操作系统中,决定一个资源是或不是能被访问的因素是:某个资源是不是拥有相应用户的权柄(读、写、执行)。
只要访问这几个资源的经过符合上述的基准就足以被访问。 而最致命难点是,root
用户不受任何管理,系统上别样资源都可以极其制地访问。那种权力管理机制的要旨是用户,也称之为自主访问控制(DAC)。
MAC:在行使了
SELinux
的操作系统中,决定一个资源是还是不是能被访问的因素除了上述要素之外,还索要看清每一类经过是不是持有对某一类资源的拜访权限。
那样一来,即便进度是以 root
身份运行的,也急需看清这些进度的品种以及允许访问的资源类型才能控制是不是同意访问某个资源。进程的移动空间也足以被削减到细微。
即使是以 root
身份运行的服务进度,一般也不得不访问到它所急需的资源。即便程序出了纰漏,影响范围也只有在其同意访问的资源限制内。安全性大大伸张。
那种权力管理机制的基点是经过,也号称强制访问控制(MAC)。
getenforce 命令是单词get(获取)和enforce(执行)连写,可查阅selinux状态
setenforce 命令则是单词set(设置)和enforce(执行)连写,用于安装selinux防火墙状态,如:
setenforce 0用于关闭selinux防火墙,但重启后失效。澳门金沙国际 7
SELinux status:selinux防火墙的景色,enabled表示启用selinux防火墙 
关闭SElinux:
暂时关闭 :[root@localhost
~]# setenforce 0 用于关闭selinux防火墙,但重启后失效 
永恒关闭:修改selinux的布置文件:vim
/etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled,保存后脱离,此时得到当前selinux防火墙的安全策略仍为Enforcing,配置文件没有生效。重启后证实。
SELinux 有二种工作方式,分别是: 1. enforcing:强制格局。违反 SELinux
规则的行事将被阻止并记下到日志中。

  1. permissive:宽容情势。违反 SELinux
    规则的作为只会记录到日志中。一般为调试用。
  2. disabled:关闭 SELinux

# cat /proc/scsi/scsi  //查看scsi硬盘新闻

1.41 crontab

1.Crontab是一个用于安装周期性执行任务的工具;
2.周期性执行的义务大家称为Cron Job;
3.周期性执行的职分列表大家誉为Cron Table
crontab文件的意思:用户所确立的crontab文件中,每一行都意味一项任务,每行的各类字段代表一项设置,它的格式共分为两个字段,前五段是时刻设定段,第六段是要举行的命令段,格式如下:

* * * * * command minute hour day month week command 顺序:分 时 日 月 周

minute: 表示分钟,可以是从0到59之间的此外整数。
hour:表示时辰,可以是从0到23之内的别样整数。
day:表示日期,能够是从1到31里头的别样整数。
month:表示月份,可以是从1到12中间的其他整数。
week:表示星期几,可以是从0到7之间的任何整数,那里的0或7象征星期六。 command:要履行的授命,可以是系统命令,也能够是和谐编写的脚本文
-u:编辑某个用户的cron,只用root可以选择此参数为其余用户安装cron服务。也可用来给用户指定crontab文件。
-l:列出当前用户的crontab。
-r:删除当前用户的crontab。
-e:编辑当前用户的crontab,默许使用vi,或者是由
VISUAL或EDITOR环境变量指定的编辑器。
-i与-r一起使用,用来询问用户是不是直接删除crontab 
1、安装cron
– yum install vixie-cron 
– yum install crontabs1、检查cron服务:
– 检查crontab工具是不是安装:crontab -l 
– 检查crond服务是或不是启动:service crond status
反省crontab服务处境:service crond status 
澳门金沙国际 81.每晚的21:30重启apache
30 21 * * * service httpd restart
2.每月1,10,22日的4:45重启apache

45 4 1,10,22 * * service httpd restart

 

3.每月1-10日的4:45重启apache
45 4 1-10 * * service httpd restart

4.天天18:00-23:00之内每隔30分钟重启apache

0,30 18-23 * * * service httpd restart
0-59/30 18-23 * * * service httpd restart

 

5.每晚11-中午7点之间,每隔一个钟头重启apache
* 23-7/1 * * * service httpd restart

6.每隔两分钟重启apache

*/2 * * * * service httpd restart
1-59/2 * * * * service httpd restart(奇数分钟重启)
0-58/2 * * * * service httpd restart(偶数分钟重启)

小结: 
-*表示其他时候都协作;
-可以用”A,B,C”表示A或者B或者C时执行命令
-可以用”A-B”表示A到B之间时执行命令
-可以用”*/A”表示每A分钟(时辰等)执行四遍命令

 

*/1 * * * * /usr/sbin/ntpdate us.pool.ntp.org | logger -t NTP

澳门金沙国际 9

 

1.42 fdisk

fdisk命令操作磁盘详解–添加、删除、转换分区等
主分区和壮大分区(伸张分区无法平素利用)(1-4),增添分区上面再分逻辑分区(5方始)。
[root@Tiger]#fdisk /dev/sda
澳门金沙国际 10
分区保存报错须求重启时,强制读取分区表音讯
#partprobe
yum install -y parted

# cat /proc/swaps  //看所有swap分区

2 LINUX THE DOCUMENT

 

2.1 用户和用户组管理

# cat /proc/version  //查看Linux内核版本

2.1.1 /etc/passwd:用户音信文件

user1:x:500:500::/home/user1:/bin/bash
率先字段:用户名称;
第二字段:密码标志;
其三字段:UID(用户ID);
0:顶级用户;
1-499:系统用户(伪用户);
500-65535:普通用户;
第4字段:GID(用户最先组ID)
第5字段:用户表达
第6字段:家目录
普通用户:/home/用户名/
一级用户:/root/
第7字段:登录之后的Shell

 

2.1.2 影子文件:/etc/shadow

第1字段:用户名
第2字符:加密密码 加密算法升级为SHA512散列加密算法
假使密码位是“ !”或“ * ”代表没有密码,无法登录。
第3字段:密码最后五遍修改日期:使用1970年七月1号作为标准时间,每过一天时间戳加1。
第4字段:五次密码的改动间隔时间(和第3字段相比较)间隔多少日子后才得以修改密码。
第5字段:密码有效期(和第3字段比较)
第6字段:密码修改到期前的警示天数(和第5字段相比较)
第7字段:密码过期后的宽松天数(和第5字段对比)
0:代表密码过期后及时失效。
-1:则代表密码永远不会失效。
第8字段:账号失效时间,要用时间戳表示
第9字段:保留
把日子戳换算为日期:
date -d “1970-01-01 17740 days” 
把日子换算为时间戳:
echo $(($(date –date=”2018/07/28″
+%s)/86400+1))

# cat /etc/security/limits.conf  //查看打开最大文件数等设置

2.1.3 组音讯文件/etc/group

首先字段:组名
其次字段:组密码标志
其三字段:GID
第四字段:组中附加用户

 

2.1.4 组密码文件/etc/gshadow

第一字段:组名
其次字段:组密码
其三字段:组管理员用户名
第四字段:组中附加用户

# cd /proc/pid号;ls -l exe  //查看进度的完整路径

2.1.5 用户的家目录

  • 普通用户:/home/用户名/,所有者和所属者都是此用户,权限是700
  • 最佳用户:/root/,所有者和所属者都是root用户,权限是550。
  • 用户的邮箱:/var/spool/mail/用户名/
  • 用户模板目录:/etc/skel:创造用户时,用户的家目录会自动创设一些潜藏文件,这几个文件是从/etc/skel/ cp过去的。想要每个新添加用户时家目录自动现身共享文件可在此目录添加。

 

2.2 linux的非正规权限

出奇权限: SUID,SGID,STICKY 
1.过程以某用户的地方运行;进度是倡议此进程用户的代办,由此那一个用户的身份和权力到位具有操作;
2.权限匹配模型: 
(1)判断过程的属主,是不是为被访问的文本属 主 ;假如是,则动用属主的权杖;否则进入第2步;
(2)判断进度的属主,是不是属于被访问的文件属 组 ;若是是,则运用属组的权杖;否则进入第3步;
(3)应用other的权限;

# date //突显当前时刻

2.2.1 SUID

SetUID的功能:

1. 只有可以执行的二进制程序才能设定SUID权限。 
2. 命令执行者要对该程序拥有X(执行)权限
3. 命令执行者在执行该程序时获得该程序文件属主的身份
4. SetUID权限只在该程序执行过程中有效,也就是说身份改变只在程序执行过程中有效。

SUID :默许情况下:用户发起的长河,进度的属主是其发起者;因而,其以发起者的地位运行;
SUID 的效益:用户运行某先后时,如若此程序有所SUID的权力,那么程序运行为经过时,进度的属主不是发起者,而先后文件自己的属主;
管理文件的SUID权限: 
chmod u+|-s FILe 
突显地方:属主的执行权限位。 
#chomod 4644 filename
取消suid权限:#chmod 644 filename
大写S为报错,检查是还是不是有x权限

 

 

2.2.2 SGID

用户在执行程序时候,组身份变为该程序文件的属组与SUID类似。

管理文件的 SGID 的权杖: 
chmod g+|-s FILE SGID :
作用:当目录属组有写的权位,且SGID权限时,当你给一个目录添加了sgid之后,前边不管哪个人来以此目录下开创文件,文件的所属组都会一连目录的所属组
来得地点:属组的执行权限位
假定属组原本有履行权限,则显得为小写s;否则,突显为大写S; 
#ll
/usr/bin/locate
#ll
/var/lib/mlocate/mlocate.db
澳门金沙国际 11

# date +’%Y/%m/%d’  //以yyyy/mm/dd格式展现日期

2.2.3 STICKY

澳门金沙国际 12
sticky :t权限只好给目录添加,当您给一个索引添加了t权限之后,后边所有人在这几个目录下无法去除其余人的文书,只好删除自己的文本;
管理文件的Sticky权限: chmod o+|-t
FILE
来得地方:其余用户的执行权限位
如若其余用户原本有实践权限,展现为小写t;否则为大写T。
系统上的/tmp和/var/tmp目录下默许均有Sticky权限

SUID SGID STICKY 八进制权限
0 0 0 0
0 0 1 1
0 1 0 2
0 1 1 3
1 0 0 4
1 0 1 5
1 1 0 6
1 1 1 7

据悉八进制格局赋权时,可于默许的三位八进制数字左边再加一位八进制数字;
例:chmod 1777 中的 1 表示更加权限

 

2.3 facl

facl:file access control lists 文件访问控制列表
文件的额外赋权机制:在本来的u,g,o之外,另一层让普通用户控制赋权给其余的用户或组的赋权机制;
查看分区ACL权限是还是不是打开
#dumpe2fs -h /dev/sda3
dumpe2fs命令是查询指定分区详细文件系统音讯的命令.选项:
-h仅呈现一流块中的音讯,而不显得磁盘块组的详细音讯
临时打开分区ACL权限:
#mount -o remount,acl
/ 重新挂载根分区,并挂载加入acl权限。
世世代代开启分区ACL权限#vi /etc/fstab

  UUID=c2ca6f57-b15c-43ea-bca0-f239083d8bd2 / ext4 dufaults,acl 1 1         加入ACL

#mount -o remount /
:重新挂载文件系统或重启动系统,使修改生效。
getfacl filename :查看文件额外的权杖 
setfacl命令: setfacl -m u:username:rw
filename 
赋权给用户: setfacl -m u:USERNAME:MODE
file 
赋权给组: serfacl -m g:GROUPNAME:MODE
file 
打消赋权:serfacl -x u:USERNAME file
    serfacl -x g:USERNAME file 
递归ACL权限:#setfacl -m u:用户名:权限
-R
目录名

 

默认ACL权限:默认acl权限的作用是如果给父目录设定了默认的ACL权限,那么父目录中所有新建的子文件都会继承父目录ACL的权限。#setfacl -m d:u:用户名:权限 文件名

澳门金沙国际 13
setfacl 选项 文件名
选项: 
-m :设定ACL权限
-x :删除指定的ACL权限
-b :删除文件所有的ACL权限
-d :设定默许ACL权限
-k :删除默许ACL权限
-R :递归设定ACL权限
最大实用权限mask mask是用来指定最大实用权限的。假设自己给用户赋予了ACL权限,是内需和mask的权柄”相与”才能博取用户的确实权限。

A B and
r r r
r
r

修改最大实用权限:#setfacl -m m:rx
filename 设定mask权限为r-x。使用“m:权限”格式。

mask值只能添加ACL权限之后后期更改,当更改mask值以后再添加ACL权限,mask值就会变为777

# date +’%Y-%m-%d’  //以yyyy-mm-dd格式展现日期

2.4 文件系统属性chattr权限

#chattr [+-=] [选项]
文件或目录名
+:伸张权限
-:删除权限
=:等于权限 
选项:

-i:如果对文件设置i属性,那么不允许对文件进行删除、改名,也不能添加和修改数据;如果对目录设置i属性,那么只能修改目录下文件的数据还可以cp,但不允许建立和删除文件
-a:如果对文件设置a属性,那么只能在文件中增加数据(只能用echo增加数据,不能用vim),但是不能删除也不能修改数据;如果对目录设置a属性,那么只允许在目录中建立和修改文件,但是不允许删除。

chattr +i a.txt
lsattr -a a.txt 
—-i——–e- a.txt   e:代表此文件在ext4文件系统下树立的。 
翻看文件系统属性:
#lsattr 选项 文件名
-a突显所有文件和目录
-d若目的是目录,仅列出目录本身的特性,而不是子文件。

 

 

2.5 sudo权限

root把本来只好一流用户执行的下令赋予普通用户执行。
sudo的操作对象是系统命令
whereis 命令 查看命令的相对路径
#visudo
实质上修改的是/etc/sudoers文件
root  ALL=(ALL)   ALL
用户名  被管理主机的地点=(可接纳的地方)  授权命令(绝对路径)
被管制的主机地址可写成主机ip和ALL 
%wheel  ALL=(ALL)  ALL
组名   被管理的主机地址=(可应用的身份)  授权命令(相对路径) 
root  ALL=(ALL)   ALL
st  192.168.81.137=/sbin/shutdown -r now 添加内容
st   ALL=/usr/bin/vim
危险操作 
#su – st:切换用户 
#sudo
-l 查看可用的sudo命令
#sudo /sbin/shutdown -r now
普通用户执行sudo赋予的授命

# date +%H:%M  //显示时、分

2.6 linux下查看援救命令

whatis :用于查询一个命令执行什么样意义,并将查询结果打印到终点上
[root@localhost ~]# whatis ls
man :Linux提供了充足的帮帮手册,当你须求查阅某个命令的参数时不用四处上网搜索,只要man一下即可
  man command    

 

2.7 linux根目录结构和文件系统

进度的体系:
  终端:硬件设备,关联一个用户接口。
  与终点相关:通过极端启动。 
  与终极无关:操作率领启动进程中活动启动 
操作系统的构成:
  静态:kernel,application
  文件系统:层级结构
FHS:  Filesystem Hierarchy Standard
  /bin:所有用户可用的基本命令程序文件;
  /sbin:供系统管理使用的工具程序;
  /boot:指引加载器必须采纳的种种静态文件:Kernel,initramfs(initrd),grub等;
  /dev:存储特殊文件或设施文件;
   设备有三种档次:字符设备(线性设备)、块设备(随机设备);
  /etc:系统先后的配置文件,只好为静态:
  /home:普通的家目录的汇聚地点:一般每个普通用户的家目录默认为此目录下与用户名同名的子目录,/home/USERNAME;
  /lib:为系统启动或根文件系统上的使用程序(/bin,/sbin)等提供共享库,以及为基石提供内核模块
   libc.so.*:动态链接的C库;
   ld*:运行时链接器/加载器;
   modules:用于存储内核模块的目录;
  /lib64:64位系统特有的寄放64位共享的门路;
  /media:便携式设备挂载点,cdrom,floppy等;
  /mnt:其他文件系统的暂时挂载点;
  /opt:附加应用程序的装置地点:可选路径;
  /srv:当前主机为劳动提供的多少;
  /tmp:为那么些会暴发临时文件的程序提供的用于临时文件的目录:可供所用户执行写入操作:有与众不一致权限;
  /usr:usr
Hierarchy,全局共享的只读数据路径:
   bin,lib64
   include:C程序头文件;
   share:命令手册页和自带文档等架构特有的文件的仓储地方
   local:另一个层级目录;
   X11R6:X-widow程序的设置地方
   src:程序源代码文件的蕴藏地方
  

# date -r test  //展现test文件最终一遍的改动时间

3 SHELL

shell就是linux的吩咐解释器。
在/etc/passwd当中,除了标准Shell是/bin/bash之外,还是可以够写如/sbin/nologin。
本子执行:

  1. 给予脚本权限,直接运行
    chmod 755 hello.sh
    ./hello.sh 
  2. 经过bash调用执行脚本
    bash hello.sh

 

3.1 shell更改

shell 程序执行有两种方法 filename:foo.sh  #. foo.sh   #bash foo.sh  #chmod +x foo.sh→#./foo.sh linux读取shell配置文件的推行顺序
Bash Shell的布置文件启动系统实施顺序
#/etc/bashrc 文件   #/etc/profile 文件  #/etc/profile.d 目录  #~/.bashrc 文件#~/.bash_profile 文件
切换差距的项目和本子的Shell   查看shells # cat /etc/shells 
经过安顿文件修改用户Shell
# /etc/passwd    # /etc/shells
由此命令自定义切换

  • chsh 自定义shell (请勿更改) 
    例:cp /bin/bash /bin/pan copy     vim /etc/shells 添加
    /bin/pan add 
    chsh 切换shell /bin/shell change

 

# dmesg  //看启动新闻

 

# dmidecode | grep “Product Name”  //查看机器型号

 

# dmidecode | more  //查看硬件(如内存型号、生产厂家等)音信

 

# dmidecode |grep ‘Serial Number’  //查看主板的体系号

 

# dmidecode -q  //显示硬件系统部件 (SMBIOS / DMI)

 

# dmidecode -s system-serial-number  //查看系统体系号

 

# dmidecode -t 11  //查看OEM信息

 

# dmidecode -t memory  //查看内存音讯

 

# dmidecode -t processor  //查看CPU详细音讯

 

# echo  //展现文本行

 

# echo $LANG  //突显系统语言

 

# echo $PATH  //突显系统的环境变量

 

# env  //突显所有环境变量

 

# export  //查看环境变量(在bash下)

 

# fgconsole  //突显活动的虚构终端数量

 

# file -s /dev/sd*  //查看设备新闻

 

 

 

# file /sbin/init  //查看系统是32位仍旧64位:

 

64位系统输出信息如下:

 

sbin/init: ELF 64-bit LSB executable, AMD x86-64, version 1 (SYSV), for
GNU/Linux 2.6.9, dynamically linked (uses shared libs), for GNU/Linux
2.6.9, stripped

 

 

 

32位系统输出音信如下:

 

/sbin/init: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV),
for GNU/Linux 2.2.5, dynamically linked (uses shared libs), stripped

 

 

 

# free -m  //以M为单位出示内存状态

 

# free -m -s5  //以M为单位,每隔5秒刷新四遍内存状态

 

# gcc -v  //查看GCC版本

 

# getconf LONG_BIT  //查看系统是32位依旧64位

 

# glxinfo  //显示有关GXL扩大和OpenGL渲染器的信息

 

# grep -i ‘10.52’ /etc/hosts 
//查找/etc/hosts文件中蕴藏10.52的行,不区分轻重缓急写

 

# hdparm -i /dev/hda 罗列一个磁盘的架构特性

 

# hdparm -tT /dev/sda 在磁盘上执行测试性读取操作

 

# head -5 /etc/passwd  //看文件passwd的前5行

 

# tail -10 /etc/passwd  //看文件passwd的后10行

 

# sed  -n ‘5,10p’ /etc/passwd  //查看文件passwd的第5行到第10行

 

# history  //突显历史记录

 

# history  5  //突显近期实施的5个历史记录

 

# history  -c  //清除历史记录

 

# sysdef -h  //查看主机ID(Unix)

 

# hostname  //凸显主机名

 

# hostname  -a  //突显主机别名

 

# hostname  -d  //突显主机域名

 

# hostname  -i  //展现主机IP地址

 

# hostname 主机名 //设置主机名称

 

# hwclock  //获取当前硬件时间

 

# hwclock –show  //查看硬件时间

 

# clock –show    //查看硬件时间

 

# hwclock –version  //显示hwclock命令的版本信息

 

# info 命令 //显示相应命令info内容

 

# iostat -d 2 3  //评估磁盘质量,每隔2s刷新五遍音讯,且刷新3次

 

# lastlog   //近期登入的年华

 

# locale  //彰显系统当下的语言设置

 

# locale -a  //突显所有可用字体

 

# /etc/sysconfig/i18n  //语言配置文件

 

# lsb_release -a  //查看系统发行版本,该命令适合所有的linux发行版本

 

# lsmod  //呈现所有已加载的模块

 

# lspci | more //展现当前系统的硬件配备

 

# lspci -v  //查看系统硬件配置详细新闻

 

# lspci -vv |more //查看系统硬件配置进一步详细的音讯

 

# lspci| grep Ethernet  //查看网卡新闻

 

# lspci -tv  //列出富有PCI设备

 

# lsusb  //输出所有的usb设备

 

# ls /etc/rc3.d/S* |cut -c 15-  //展现运行3级别开启的劳动

 

# ls -l /lib/modules/$(uname -r)/kernel/fs  //查看Linux扶助什么文件系统

 

# cat /proc/filesystems  //查看当前已加载到内存中协理的文件系统

 

# mount  //列出系统的拥有分区

 

# mpstat  //多处理器使用率

 

# netstat -pan|grep 177  //查看177端口意况

 

# netstat -nlap  //查询进度占用哪些端口

 

# ps aux  //彰显所有进程情状和经过的骨干音信

 

# ps -e  //查看当前颇具进度

 

# ps -u root –N  //展现所有不是以root身份运作的经过

 

# ps -U ow2003  //突显ow2003用户进度

 

# ps -ef |grep ow2003  //显示ow2003用户进度

 

# pstree  -h  //高亮突显当前正值推行的历程

 

# pstree  -p  //以树状图情势显示进度及进度号

 

# pwd  //展现当前目录

 

# rpm -qa redhat-release  //看操作系统版本(只适用RH连串)

 

# rpm -qa | xargs rpm -V 
//查看系统中拥有被改动过的文书,那对新装置的系列相比较可行

 

# rpm -qa vsftpd | xargs rpm -V 
//查看系统中某个rpm包中的文件是或不是被修改

 

# runlevel  //展现系统运作级别

 

# set  //彰显所有地点定义的Shell变量

 

# stat -f filename  //突显文件系统状态

 

# stat filename  //突显文件详细内容

 

# tac /etc/hosts 
//与cat相反,是将hosts内容从最终一行到第一行反向展现在屏幕上

 

# time ls  //查看执行ls命令所需的时日

 

# top n 2  //突显进程音信,刷新五遍后退出

 

# top -d 2 -n 3 -b >test.txt 
//将top的结果输出到文件test.txt中(每隔2秒,打印3次)

 

# top -bn1  //top命令列出所有进度

 

# top -bn1 > 1.txt  //将进程输出到文件1.txt里

 

# touch –help //突显touch援救信息

 

# tty  //突显当前极端的名号

 

# uname -a  //彰显所有新闻

 

64位系统输出如下新闻:

 

Linux server141.guodu.net 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT
2009 x86_64 x86_64 x86_64 GNU/Linux

 

 

 

32位系统输出如下音讯:

 

Linux bank.guodu.net 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:30:39 EST 2005
i686 i686 i386 GNU/Linux

 

 

 

# uname -i  //显示硬件平台

 

# uname -m  //突显机器硬件名

 

# uname -n  //突显互联网节点主机名

 

# uname -o  //呈现操作系统

 

# uname -p  //突显处理器类型

 

# uname -r  //呈现内核版次

 

# uname -s  //突显内核名

 

 

 

Linux内核版本新闻:

 

Redhat 9.0———————————————2.4.20-8

 

RHEL 3 Update 8————————————2.4.21-47

 

RHEL 4 ————————————————2.6.9-5

 

RHEL 4 Update 1————————————2.6.9-11

 

RHEL 4 Update 2————————————2.6.9-22

 

RHEL 4 Update 3————————————2.6.9-34

 

RHEL 4 Update 4————————————2.6.9-42

 

RHEL 4 Update 5————————————2.6.9-55

 

RHEL 4 Update 6————————————2.6.9-67

 

RHEL 4 Update 7————————————2.6.9-78

 

CENTOS 5/RHEL 5 ———————————2.6.18-8

 

CENTOS 5.1/RHEL 5 Update 1——————2.6.18-53

 

CENTOS 5.2/RHEL 5 Update 2——————2.6.18-92

 

CENTOS 5.3/RHEL 5 Update 3——————2.6.18-128

 

CENTOS 5.4/RHEL 5 Update 4——————2.6.18-164

 

CENTOS 5.5/RHEL 5 Update 5——————2.6.18-194

 

CENTOS 5.6/RHEL 5 Update 6——————2.6.18-238

 

 

 

# uptime  //查询系统自启动到近来总的运行时刻及负荷意况

 

# vmstat  //彰显虚拟内存的应用新闻

 

# vmstat  2  3  //突显虚拟内存每隔2s刷新四回信息,且刷新3次

 

# whatis [命令或数量]  //相当于man -f [指令或数额]

 

# yes  string  //设定重复显示的字符串

 

2、系统管理命令

 

# bc  //调用总结器(若是要出口小数,则要履行
scale=number,这几个number就是小数点后的位数),输入quit退出bc

 

# chkconfig rlogin on  //开启rlogin服务

 

# chkconfig rsh on  //开启远端服务器rsh

 

# chsh  //shell设置

 

# chsh  -l  //列出近来具有可用的shell

 

# chsh -s /bin/bash  //改变如今的shell设置为/bin/bash

 

# /bin/sh  //切换shell

 

# exit  //退出shell

 

# clear  //清除终端显示屏

 

# cp /dev/cdrom mycd.iso & //后台运行制作镜像(加&)

 

# Ctrl + L  //清除终端屏幕

 

# dos2unix filedos.txt fileunix.txt 
//将一个文本文件的格式从MSDOS转换成UNIX

 

# unix2dos fileunix.txt filedos.txt 
//将一个文书文件的格式从UNIX转换成MSDOS

 

# recode ..HTML page.html  //将一个文书文件转换成html

 

# recode -l | more  //突显所有允许的更换格式

 

 

 

# badblocks -v /dev/hda1  //检查磁盘hda1上的坏磁块

 

# fsck /dev/hda1  //修复/检查hda1磁盘上linux文件系统的完整性

 

# fsck.ext2 /dev/hda1  //修复/检查hda1磁盘上ext2文件系统的完整性

 

# e2fsck /dev/hda1  //修复/检查hda1磁盘上ext2文件系统的完整性

 

# e2fsck -j /dev/hda1  //修复/检查hda1磁盘上ext3文件系统的完整性

 

# fsck.ext3 /dev/hda1  //修复/检查hda1磁盘上ext3文件系统的完整性

 

# fsck.vfat /dev/hda1  //修复/检查hda1磁盘上fat文件系统的完整性

 

# fsck.msdos /dev/hda1  //修复/检查hda1磁盘上dos文件系统的完整性

 

# dosfsck /dev/hda1  //修复/检查hda1磁盘上dos文件系统的完整性

 

# echo $shell  //展现当前用户的默许shell

 

# fg 2178 //将后台进度编号为2178调到前台

 

# ftp 10.52.19.189 &  //让ftp进度在后台执行

 

# init 0   //关闭系统(甘休)

 

# telinit 0  //关闭系统(3)

 

# init 1   //单用户情势(root)

 

# init 2   //多用户文本情势(无法选择NFS)

 

# init 3   //多用户文本方式(能动用网络共享)

 

# init 5   //图形登录形式

 

# init 6   //重新起动系统

 

# shutdown -h now  //关闭系统(1)

 

# shutdown -h hours:minutes &   //按预订时间关闭系统

 

# shutdown -c   //裁撤按预订时间关闭系统

 

# shutdown -r now   //重启(1)

 

# reboot   //重启(2)

 

# logout   //注销

 

# jobs 查看后台运行的进度

 

# kill -9 2178
//强制终止ID为2178的历程(强制法可能导致系统资源无法正常释放,一般不引进应用,除非其他方法都不行)

 

# mc  //对当前目录文件举行可视化管理

 

# ntsysv  //设置系统开机时启动的种种服务

 

# system-config-services  //图形界面的安装系统开机时起步的各类劳动

 

# pgrep nslookup  //突显与指定字符串相关的进度

 

# pgrep -u root -l  //查找由root用户创设的历程

 

# pgrep -u root -l -v  //查找不是由root用户创制的进度

 

# ps -aux //呈现当前运作的经过(静态)

 

# ps -ef  // 查看所有进度

 

# pstree //查看当前进程树

 

# pwck /etc/passwd  //检测passwd文件的科学

 

# pwck /etc/shadow  //检测shadow文件的不易

 

# rlogin -l ow2003 10.52.19.200  //以用户ow2003登录远端主机

 

# rmmod 未使用的模块名  //卸载unused模块

 

# rsh 10.52.19.189  //登录远端主机10.52.19.189

 

# rsh -l ow2003 10.52.19.189  //以用户ow2003登录远端主机

 

# runlevel //突显系统当下运作级别

 

# sleep 2m  //让系统休眠2分钟

 

# ssh 10.52.19.189  //登录远端主机10.52.19.189

 

# ssh -l ow2003 10.52.19.189  //以用户ow2003登录远端主机

 

# sudo -L  //突显sudo命令可以选拔的参数及相关描述音讯

 

# sudo -u ow2003 ls -l /home  //以用户ow2003身份执行命令

 

# suspend  //暂停正在利用的shell

 

# suspend -f  //强制暂停正在使用的shell

 

# symlinks -v /  //显示根目录下的拥有符号链接

 

# testparm  //测试samba配置,回车后继续

 

# top //突显当前运行的历程(动态)

 

# top (Ctrl+Z) // 将目前top进程调到后台并终止

 

# vlock  //锁定虚拟终端

 

# watch -n 10 –difference=cumulative who  //以高亮字符呈现累加差距

 

# watch -n 10 who  //每隔10秒执行三回who命令

 

# whereis  //找到指定文件的源、二进制文件和手册等各部分

 

# xkill  //鼠标点死掉的图纸即可终止,假设想终止xkill ,按右键裁撤

 

 

 

bash 快捷键:

 

常用:

 

Ctrl+a  起第二地点

 

Ctrl+e  最后位置

 

Ctrl+k  删除此处至最终具备内容

 

Ctrl+u   删除此处至开首拥有内容

 

Ctrl-C  杀死当前义务

 

Ctrl-L  刷新屏幕

 

Ctrl-shift-c  复制

 

Ctrl-shift-v  粘贴

 

tab  补全

 

 

 

terminal窗口操作:

 

Alt+1  切换到标签页1

 

Alt+2  切换来标签页2

 

Alt+3  切换来标签页3

 

Ctrl+PageDown  后一标签页

 

Ctrl+PageUp  前一标签页

 

Shift+Ctrl+N  新建窗口

 

Shift+Ctrl+PageDown  标签页右移

 

Shift+Ctrl+PageUp  标签页左移

 

Shift+Ctrl+Q  关闭终端

 

Shift+Ctrl+T  新建标签页

 

Shift+Ctrl+W  关闭标签页

 

 

 

terminal窗口中的复制/粘贴:

 

Shift+Ctrl+C  复制

 

Shift+Ctrl+V  粘贴

 

 

 

改变terminal窗口大小:

 

!!  执行上一条命令

 

!?string?  执行含有string字符串的流行命令

 

!num  执行命令历史列表的第num条命令

 

↑(Ctrl+p)  展现上一条命令

 

↓(Ctrl+n)  突显下一条命令

 

Alt+<  历史列表第一项

 

Alt+>  历史列表最终一项

 

Ctrl –   减小

 

Ctrl+Shift +  放大

 

Ctrl 0  原始大小

 

Ctrl+r 
然后输入若干字符,开首上扬搜索蕴含该字符的一声令下,继续按Ctrl+r,搜索上一条匹配的命令

 

Ctrl+s  与Ctrl+r类似,只是正向检索

 

F11:全屏

 

history  展现命令历史列表

 

ls !$  执行命令ls,并以上一条命令的参数为其参数

 

 

 

光标移动:

 

Alt+b  光标向后运动一个单词

 

Alt+c  把方今词汇变成首字符大写

 

Alt+d   剪切光标之后的词

 

Alt+f  光标向前移动一个单词

 

Alt+l  把当前词转化为题写

 

Alt+t  沟通当前与在此此前单词的职务

 

Alt+u  把当下词转化为题写

 

Ctrl+(x u)  按住Ctrl的还要再先后按x和u,裁撤刚才的操作

 

Ctrl+a  光标移到行首。

 

Ctrl+b  光标左移一个假名

 

Ctrl+c  删除整行

 

Ctrl+d 
删除光标所在字母(注意与backspace以及Ctrl+h的区分,那七个是删除光标前的字符)

 

Ctrl+d  退出当前 Shell(当前行无字符时)

 

Ctrl+e  光标移到行尾。

 

Ctrl+f  光标右移。

 

Ctrl+h  删除光标前一个字符,相当于按 backspace 键。

 

Ctrl+k  清除光标后至行尾的始末。

 

Ctrl+l  清屏,相当于clear

 

Ctrl+q  重新启用挂起的shell

 

Ctrl+r 
搜索此前输入过的通令。将有提示,依据输入的首要字搜索bash的history

 

Ctrl+s  挂起方今shell

 

Ctrl+t  沟通光标位置前的七个字符。

 

Ctrl+u  清除光标前至行首间的有所内容。

 

Ctrl+v 插入特殊字符,如Ctrl+v+Tab参预Tab字符键

 

Ctrl+w  清除光标所在处此前的一个词(以空格、标点等为分隔符)

 

Ctrl+y  粘贴或恢复上次的删除。

 

Ctrl+z  把当下进度转到后台运行,使用 fg 命令苏醒。

 

Esc+b  移动到方今单词的开头

 

Esc+f  移动到当前单词的尾声

 

Esc+t  颠倒光标所在处及其附近单词的地方

 

Esc+w  删除光标所在处从前的字符至其单词尾(以空格、标点等为分隔符)

 

 

 

3、系统尊敬命令

 

# alias  //列出已设置的别名

 

# alias rm ‘rm -i’  //设置别名

 

# authconfig  //设置系统的注明消息

 

# bind -l  //突显按键组合的始末

 

# bind -q abort  //查询abort上绑定的键

 

 

 

# chattr +i filename  //禁止删除

 

# chattr -i filename  //撤废禁止

 

# chattr +i /etc/fstab  //禁止修改fstab文件

 

# chattr -i /etc/fstab  //撤消禁止修改fstab文件

 

# chmod 4755 test 
//使test文件具有SUID权限(4为SUID)。SUID对目录是行不通的

 

# chmod 2755 test 
//使test文件具有SGID权限(2为SGID)。SGID可用以文书或目录

 

# chmod 1755 /test  //使/test目录具有SBIT权限(1为Sticky
bit即SBIT)。SBIT只对当前目录有效

 

# chmod 7666 test 
//test文件拥有者无执行权限,设置后的大写S、T表示“空的”,即没有履行权限

 

# lsattr -a  test //突显文件test的隐藏属性

 

# lsattr -a  //呈现当前目录下所有的目录和文件,包罗隐藏文件或目录

 

# lsattr -R  //递归彰显指定目录及子目录的内容

 

# lsattr  //彰显当前目录下的文件属性

 

# chkconfig  –list  //列出chkconfig所知道的所有服务

 

# chkconfig telnet off  //关闭telnet服务

 

# chkconfig telnet on  //开启telnet服务

 

# cat /etc/sysconfig/clock  //查看所属时区和是还是不是使用UTC时间

 

 

# date -s 2007-08-03  //只修改日期

 

# date -s “2007-08-03 14:15:00”  //同时修改日期和时间,加双引号

 

# date -s 02/16/2012  //修改日期(按月日年格式)

 

# date -s 13:56:00  //修改时间(按时分秒格式)

 

# clock -r  //查询BIOS时间

 

# cp /usr/share/zoneinfo/Asia/Shanghai  /etc/localtime  //修改时区

 

修改/etc/sysconfig/clock文件的情节为:

 

ZONE=”Asia/Shanghai”

 

UTC=false

 

ARC=false

 

# hwclock –w  //同步BIOS时间

 

# hwclock -set -date=”07/07/06 10:19:00”  //设置硬件时间(月/日/年
时:分:秒)

 

# clock -set -date=”07/07/06 10:19:00”    //设置硬件时间(月/日/年
时:分:秒)

 

# hwclock -hctosys 
//硬件时钟与系统时钟同步(hc代表硬件时间,sys代表系统时间)

 

# clock -hctosys 
//硬件时钟与系统时钟同步(hc代表硬件时间,sys代表系统时间)

 

# hwclock -systohc  //系统时钟与硬件时钟同步

 

# clock -systohc  //系统时钟与硬件时钟同步

 

# tzselect  //时区设置

 

# DEB 包 (Debian, Ubuntu 以及近似系统)

 

# dpkg -i package.deb  //安装/更新一个 deb 包

 

# dpkg -r package_name  //从系统除去一个 deb 包

 

# dpkg -l  //突显系统中具备曾经安装的 deb 包

 

# dpkg -l | grep httpd  //显示所闻名称中带有 “httpd” 字样的deb包

 

# dpkg -s package_name  //得到已经安装在系统中一个新鲜包的音信

 

# dpkg -L package_name 
//显示系统中曾经安装的一个deb包所提供的文件列表

 

# dpkg –contents package.deb  //呈现没有安装的一个包所提供的公文列表

 

# dpkg -S /bin/ping  //确认所给的文本由哪个deb包提供

 

# declare BASH=/bin/csh  //修改变量BASH的值为/bin/csh

 

# declare -p  //突显shell的装有变量及值

 

# declare -x  //显示所有环境变量的值

 

# dircolors -b  //突显Bourne Shell颜色代码设置

 

# dircolors -c  //呈现C Shell颜色代码设置

 

# dircolors -p  //展现ls命令默许颜色值

 

# enable -a  //显示shell的有着内置指令

 

# enable alias  //加载内部命令alias

 

# enable -n alias  //关闭alias

 

# eval pwd;df -h;ls  //连接多少个指令pwd,df -h和ls

 

# export MYENVIRON  //自定义一个条件变量MYENVIRON

 

# export MYNAME= ” Wang Xuri”  //定义环境变量并赋值

 

# export -p  //列出近期的条件变量值

 

# unset MYNAME  //清除环境变量MYNAME

(注:以上命令使用的shell是bash)

 

 

 

# fdisk /mbr  //删除GRUB

 

# hostid  //突显当前主机的数字标识

 

# ldd /bin/ls  //突显/bin/ls命令所使用的共享函数库

 

# ldd -v /bin/ls  //以冗余形式呈现的/bin/ls所运用的共享函数库

 

# losetup /dev/loop0  //突显设备/dev/loop0的情形

 

# depmod  //分析可载入模块的相依性

 

# insmod  //载入模块

 

# lsmod  //突显所有已加载的模块

 

# lsmod -v usb-uhci  //使用insmod命令安装模块”usb-uhci”

 

# modinfo  //突显kernel模块的音信

 

# modprobe  //自动处理可载入模块

 

# modprobe -c  //突显当前自行处理可载入模块的默认配置

 

# rmmod  //删除模块

 

# modprobe -v 8139too  //安装网卡8139too

 

# mouseconfig –device psaux  //指定鼠标端口为PS/2,鼠标为psaux

 

# mouseconfig –noui genericusb  //以命令方式指定鼠标类型为genericusb

 

# mouseconfig –text  //在图形界面格局下安插鼠标

 

# resize -c  //使用C shell表示近来终端窗口大小

 

# resize -s 30 100  //设置虚拟终端大小,高为30列,长为100个字符

 

# resize -u  //使用Bourne shell表示近来极端窗口大小

 

# rpm –checksig package.rpm   //确认一个rpm包的完整性

 

# rpm -e package-name //卸载具体的软件包

 

# rpm -ev RealPlayer  //卸载软件RealPlay

 

# rpm -hiv RealPlayer10GOLD.rpm  //安装RealPlayer10GOLD.rpm包

 

# rpm -i mplay.rpm   //安装mplay软件包(不展现新闻)

 

# rpm -ivh –force mplay.rpm    //强制安装mplay软件包(突显消息)

 

# rpm -ivh package-name //安装软件包并显示进程

 

# rpm -oldpackge mplay.rpm  //降级mplay软件包

 

# rpm -q http //查询指定的包http是还是不是安装

 

# rpm -q installed-package-name //查看是或不是安装

 

# rpm -q telnet-server //查看telnet服务器包

 

# rpm -qa //查看系统中已安装的享有rpm包(不分屏)

 

# rpm -qa|grep ftp //查询指定RPM

 

# rpm -qa|less //查询已安装RPM(分屏)

 

# rpm -qf luo //查询文件luo所属的软件包

 

# rpm -qf package-name //查询某个文件所属的软件包

 

# rpm -qi http    //查询指定的包http详细音信(已设置)

 

# rpm -qi package-name //查看软件的描述新闻

 

# rpm -qi Realplayer  //查询RealPlay的安装音信

 

# rpm -ql http    //查询指定的包http文件列表(已安装)

 

# rpm -ql package-name //查询软件包的文书列表

 

# rpm -qp package-name //查询未设置的软件包音讯

 

# rpm -qpi http   //查询指定的包http详细音信(未安装)

 

# rpm -qpl http   //查询指定的包http文件列表(未安装)

 

# rpm -U mplay.rpm //升级mplay软件包

 

# rpm -Uvh package-name //升级软件包并出示进程

 

# rpm -V package-name //验证软件包的高低,类型等等

 

# which mount //获得mount所属包可执行文件路径

 

# for i in ‘rpm -qa |grep -i php’

 

  >do rpm -e $i -nodeps

 

  >done  //删除系统中与软件php相关的富有已安装的软件包

 

# alias td  //显示别名音讯

 

# alias td=tcpdump  //tcpdump命令设置别名td

 

# runlevel  //呈现当前系统运作阶段

 

# runlevel 2  //设置举行级别

 

# set  //呈现当前的环境变量设置

 

# set SHELL “/bin/sh”  //设置环境变更SHELL的值为/bin/sh

 

# setserial -a /dev/ttyS1  //突显串口/dev/ttyS1的详细布置音讯

 

# setserial -v /dev/ttyS1  //显示串口/dev/ttyS1的配备信息

 

# setup  //用来设置验证、防火墙、鼠标、互联网安顿、系统服务等公用程序

 

# fdisk -l  //显示分区新闻

 

# startx & init 5  //进入图形界面

 

# swapoff /dev/sda3  //卸载互换区/dev/sda3

 

# swapon /dev/sda3  //加载交流区/dev/sda3

 

# sync  //将内存新闻同步写入磁盘(在有些“危险”操作前使用)

# system-config-  //一连按两下tab键,调出配制命令列表,以备拔取

 

# tmpwatch -t 100 /tmp/ 
//查看100小时内未被利用的文本(不删除文件,仅进行测试)

 

# tmpwatch 100 /tmp/  //删除/tmp目录下100小时内未被应用的公文

 

# tmpwathc -s 100 /tmp/ 
//在剔除文件之前,使用fuser命令检测该文件是不是正被选用

 

# ulimit -a  //突显系统资源配置

 

# ulimit -n 1000  //设置同一时间可打开的文件数量

 

# ulimit -u 500  //设置单用户创立进程上限为500

 

# ulimit -v 1024  //设置最大虚拟内存数

 

# unalias td  //删除别名

 

# unset pwd  //删除环境变量

 

# up2date  //升级Red Hat Linux系统

 

# up2date -l  //列出装有可用的升级包

 

 

 

获释linux系统的内存(在RHEL4.0及以上版本测试通过。注:在应用程序未脱离时无法接纳该命令):

 

# free -m

 

# sync

 

# echo 3 > /proc/sys/vm/drop_caches

 

# cat /proc/sys/vm/drop_caches

 

# free -m

 

 

 

# ./configure;make;make install  //编译安装过程(cd到安装目录执行)

 

# sh ./file_name  //安装.run后缀文件

 

# system-config-packages //启动图形界面包管理程序

 

# nvidia-settings  //设置nvidia显卡

 

 

 

为根本打补丁

 

# bunzip2 patch-2.6.0-rmk2.bz2  //将包解压成patch-2.6.0-rmk2

 

# mv patch-2.6.0-rmk2 ./linux-2.6.0  //将补丁移到大基本目录

 

# cd linux-2.6.0   //进入基础目录

 

# patch -p1 < patch-2.6.0-rmk2  
//“<”前后各有一个空格,-p1中的1是数字1。若补丁文件非bz2格式,如gz,则可用以下命令为内核打补丁:

 

# zcat ./patch-2.6.0-rmk2.gz | patch -p1

 

# YUM 软件包升级器 – (Fedora, RedHat及类似系统)

 

# yum install package_name  //下载并设置一个rpm包

 

# yum localinstall package_name.rpm 
//将安装一个rpm包,使用你协调的软件仓库为您解决所有着重关系

 

# yum update package_name.rpm  //更新当前系统中负有安装的rpm包

 

# yum update package_name  //更新一个rpm包

 

# yum remove package_name  //删除一个rpm包

 

# yum list  //列出当下系统中装置的装有包

 

# yum search package_name  //在rpm仓库中寻觅软件包

 

# yum clean packages  //清理rpm缓存删除下载的包

 

# yum clean headers  //删除所有头文件

 

# yum clean all  //删除所有缓存的包和头文件

 

# iconv -f big5 -t utf8 vi.big5 -o vi.utf8 
//把用big5编码的文书vi.big5转成utf8编码文件vi.utf8

 

# iconv -f utf8 -t big5 vi.utf8 | \

 

> iconv -f big5 -t gb2312 | iconv -f gb2312 -t utf8 -o vi.gb.utf8 
//把用繁体编码的utf8文件vi.utf8转成简体的utf8文件vi.gb.utf8

 

 

 

 

4、自动作业处理

 

# /sbin/service anacron restart  //重启anacron服务

 

# /sbin/service anacron start  //启动anacron服务

 

# /sbin/service anacron stop  //停止anacron服务

 

# /usr/sbin/atd  //启动atd守护进度

 

# at -c 6  //突显已经设置的任务6的始末

 

# at -l  //查询已安装的天职

 

# atd  -d  //以出口调试音信的方法运行队列中的义务

 

# atq  //查询当前已安装的天职

 

# atrm 3  //删除当前职务队列中的第3个任务

 

# atrun  //执行已排队的职分

 

# cat /var/spool/cron/root //查看任务内容

 

# chkconfig –level 35 crond off //关闭crond服务(在3,5级别)

 

# chkconfig –level 35 crond on  //启动crond服务(在3,5级别)

 

# chkconfig –level级别列表 服务名称 [on|off|reset]

 

# chkconfig –level 24 syslog off //设置syslog 2,4级其余起步状为off

 

# chkconfig –list 服务名称

 

# chkconfig –list //突显已运转具有服务的起步状态

 

# chkconfig –list syslog //呈现指定syslog服务的启航状态

 

# chkconfig服务名 [on,off,reset]

 

# chkconfig rsync on //设置rsync服务情状为启动

 

# chkconfig –list crond  //查询crond在各运行级其余开行状态

 

# chkconfig –list|grep iptables  //查看防火墙状态

 

# crontab -e //编辑cron职务(编完后,系统默许保存地方是/tmp)

 

# crontab -l //查看当前的cron职分列表

 

# crontab -r //删除cron任务

 

# rpm -qa anacron  //查看系统中是或不是已安装anacron服务

 

# rpm -qa crontabs  //检查系统中是否已设置crond服务

 

# service crond restart  //重启cron服务

 

# service crond start  //启动crond服务

 

# service crond status  //查看cron服务启动状态

 

# service crond stop  //停止crond服务

 

# pgrep crond  //判断crond 是还是不是在运转

 

# pkill crond  //杀掉正在运转中的crond

 

# pgrep crond  //查看是还是不是被杀掉了

 

# /usr/sbin/crond  //运行crond

 

# /etc/init.d/crond stop  //停止cron服务

 

# /etc/init.d/crond restart  //重启cron服务

 

 

 

5、系统日志

 

# /sbin/syslogd  //启动syslog日志守护进度

 

# /sbin/syslogd -r  //守护进度可以接收来自网络的syslog新闻

 

# killall -HUP syslogd  //重新修改配置文件后,重启syslog进程使其收效

 

# echo > /user/local/apache/logs/error_log  //清空Apache服务日志

 

 

 

二、用户和用户组管理

 

# ac  //查看系统总的连接时间

 

# ac -d  //按天对连日进行集中

 

# ac -p  //列出所有用户的连接时间

 

# cat /etc/shadow  //查看/etc/shadow文件

 

# chage  //改变用户变更密码的定期,须要用户必须在几天之内变更密码

 

# chage -l ow2003  //查看ow2003用户密码的有效期

 

# chfn  //用来改变一个用户的完整用户名和别的音信

 

# chpasswd  //两回性更新一组现有用户的密码

 

# chroot /tmp/empty /ls –Rl /  //以/tmp/empty为根运行ls命令

 

# chsh  //改变用户的缺省登陆shell

 

# cut -d: -f 1 /etc/group  // 查看系统所有组

 

# cut -d: -f 1 /etc/passwd  // 查看系统所有用户

 

# dpasswd  //删除或者更新用户登录shell的拨号密码

 

# expiry  //检查并强制执行密码失效策略

 

# faillog 
//检查登录战败日志/var/log/faillog,设置允许登录战败的次数或重置失败次数

 

# finger -l  //列出如今报到用户的相干信息

 

# finger ow2003  //查看ow2003用户描述音讯

 

# gpasswd  //用来管理/etc/group文件

 

# grep ow2003 /etc/shadow  //查看ow2003是或不是禁用(用户名后紧跟!号)

 

# grep ow2003 /etc/shadow  //查看ow2003是还是不是启用(用户名后无!号)

 

# groupadd  //建立新的用户组

 

# groupadd benet //添加benet组

 

# groupadd -g 502 student  //添加用户组student,GID为502

 

# groupadd -g benet st03 //添加st03用户并指定属于benet组

 

# groupdel  //删除用户组

 

# groupdel benet //删除benet组

 

# groupmod  //修改用户组

 

# groupmod -n new_group_name old_group_name   //重命名一个用户组

 

# groupmod -g 503 teacher  //修改teacher用户的组标识为503

 

# groupmod -g  550 -n dirctor teacher 
//将teacher用户组标识号改为550,用户组名改为director

 

# groups  //突显当前用户所属的用户组

 

# grpck  //校验用户组文件的完整性,/etc/group 和 /etc/gshadow

 

# grpconv  //依照/etc/group文件建立/etc/gshadow文件

 

# grpunconv 
//按照/etc/group和/etc/gshadow文件建立新的/etc/group文件,并剔除/etc/gshadow文件

 

# id  //突显当前用户的UID、GID和用户所属的组列表

 

# id  用户名 // 查看指定用户音讯

 

# id -g  //展现当前用户的用户组GID

 

# id -G  //展现所有的用户组GID

 

# id -G -n  //突显所有的群组名称

 

# id ow2003  //突显指定用户ow2003的用户音讯

 

# id root  //突显root用户的用户音信

 

# last  //呈现近日用户的报到信息(last命令查找/var/log/wtmp文件)

 

# last -n 10  //仅显示10行记录

 

# last -x  //查询近来用户登录情形,同时展现系统关机及系统运作阶段变化

 

# lastb  //显示近来报到战败用户音信(lastb命令查找/var/log/btmp文件)

 

# lastlog 
//格式化并出口最终一个签到日志的内容,或者是某个用户的近日四遍登陆内容

 

# ln /usr/sbin/groupadd /usr/sbin/addgroup 
//创制名为addgroup的链接命令,链接到groupadd命令

 

# login  //系统用它来允许用户登陆

 

# logname  //突显登录用户的用户名

 

# logoutd  //用/etc/porttime中的设置强制限制登录时间和端口

 

# mkpasswd  //读取参数设定的某格式文件并转载至相应的数据库文件格式

 

# newgrp  //不指定转换的用户组时,系统默许转换为报到时的用户组

 

# newgrp [-] [groupname] 
//选项“-”用于重新加载用户工作条件。如若不带“-”选项,则在切换用户组时,用户的做事条件(包罗当前工作目录等)不会转移

 

# newgrp bin  //改变方今用户的主用户组为bin

 

# newusers  //批量加入新的用户

 

# passwd  //修改当前用户的密码

 

# passwd -d ow2003  //飞快删除ow2003用户的密码

 

# passwd -l ow2003  //锁定ow2003用户使其不可以登录

 

# passwd ow2003  //根用户修改普通用户ow2003的密码

 

# passwd -u ow2003  //解锁ow2003用户使其可以登录

 

# pwck  //校验密码文件的完整性,/etc/passwd 和 /etc/shadow

 

# pwconv 
//根据/etc/passwd文件建立/etc/shadow文件(解决双边不匹配时的难题,如用户ow203在passwd中有记录而在shadow中无记录的风貌;解决不可以进入图形界面的用户和组管理器现象)

 

# pwunconv 
//根据/etc/shadow和/etc/passwd文件建立新的/etc/passwd文件,并剔除/etc/shadow文件

 

# rwho -a  //显示局域网内所有用户

 

# sg  //设置用户的GID到指定组,或者以指定组的质量执行一个下令

 

# su –  //切换为根用户

 

# touch /etc/nologin  //在系统保护时期禁止用户登录(但不避免SSH登录)

 

# useradd  //添加新的用户照旧改变新用户的默许新闻

 

# useradd -D  //显示当前的默许值

 

# useradd -D -s /bin/csh  //修改该命令所用shell的默许值为/bin/csh

 

# useradd wxr2 -u 502 -d /home/wxr -s /bin/bash -e 10/30/11 -g 100 
//添加一新用户wxr2,UID为502,用户组ID为100,用户目录为/home/wxr,用户的默许shell为/bin/bash,账号的失效期为二〇一一年十二月30日

 

# userdel  /删除用户

 

# userdel ow2003 //删除 ow2003用户(仅删帐号)

 

# userdel -r ow2003 //删除 ow2003用户(连同主目录删除)

 

# usermod  //修改用户音讯

 

# usermod -d /home/wxr2 -s /bin/ksh -g users wxr 
//用户登录目录改为/home/wxr2,用户登录shell改为ksh,用户所在组改为users和wxr

 

# usermod -g benet st03 //设置st03用户新的组名为benet

 

# usermod -G szxs st03  //添加st03用户到其余组szxs(多组)

 

# usermod -L ow2003 //禁用ow2003用户

 

# usermod -U ow2003 //启用ow2003用户

 

# usermod -u0 -o ow2003 //升高ow2003用户管理员权限

 

# users  //显示所有登录的用户

 

# vigr  //能用来编排 /etc/group 或 /etc/gshadow文件

 

# vigr /etc/group  //编辑group时机动对该文件加锁,编辑截至时自动解锁

 

# vipw  //编辑passwd时将自行对该公文加锁,编辑停止时自动解锁

 

# vipw  //能用来编排 /etc/passwd 或 /etc/shadow文件

 

# w -f  //突显登录用户音信,但不显得登录地点(即from字段)

 

# w -h  //在体现登录用户信息时,不出示标题栏

 

# w root  //只询问指定用户root的新闻

 

# w -s  //以简要情势显示登录用户新闻

 

# w // 查看当前登陆用户及所开展的操作

 

# who -H  //展现登录系统的用户音讯时,突显标题栏

 

# who -H -m  //只突显应用当前标准输入设备的用户

 

# who -H -p  //彰显由init进度成立的移动进度

 

# who -H -u  //展现空闲时间段

 

# who -q  //展现所有登录的用户名以及登录用户的数据

 

# who -T -H  //展现用户情状音讯

 

# who  // 突显当前登陆系统的用户

 

# whoami  //展现当前报到用户名称

# skill -9 pts/2  //杀掉从pts/2虚拟终端登录的用户

 

# write wang

 

EOF  //向登录用户wang发送即将关机的音讯

 

System will shutdown soon!

 

 

 

三、磁盘管理

 

# blkid  //列出如今系统中享有已挂载文件系统的连串

 

# blkid -s LABEL  //仅突显每个(指定)设备相匹配的标签

 

# blkid /dev/sda1  //查看/dev/sda1设备所使用的文件系统类型

 

# e2label device [newlabel]  //改变当地设备文件系统的label名称

 

# dd if=/dev/zero of=f1 bs=10MB count=2  //用虚拟文件f1反省配额意况

 

# dd if=/dev/sda of=/home/backup/boot_MBR bs=446 count=1 
//备份MBR。解决Linux和Windows双系统的指引难题(IED硬盘为hda)

 

# dd if=/home/backup/boot_MBR of=/dev/sda bs=446 count=1  //恢复MBR

 

# dd if=/dev/zero of=/home/loopdev bs=1M count=512 
//创制一个空的文本在/home/loopdev

 

# mkfs -t ext3 /home/loopdev  //对/home/loopdev进行格式化

 

# mount -o loop /home/loopdev /media/cdrom 
//挂载/home/loopdev这个loop设备到/media/cdrom目录

 

# df //用于报告文件系统的总容量,使用量,剩余容量

 

# df -ah  //查询所有分区使用量,以可被辨认的法门突显

 

# df -h  //以用户容易辨认的措施显示磁盘空间使用状态

 

# df -i  //以inode形式突显磁盘的施用情形

 

# df -T //查看磁盘格式挂载后的音讯

 

# df -t ext3  //只突显ext3档次磁盘的信息

 

# df -x ext3  //不显示指定磁盘类型的磁盘使用新闻

 

# dmesg | grep IDE  // 查看启动时IDE设备检测境况

 

# dmesg | grep DMA  //查看硬盘是还是不是运行在DMA形式

 

# du -a DirPath  //突显所有文件及其子目录占用的数额块数

 

# du -a | sort -n > /home/disk_used & 
//将呈现结果存储到/home/disk_used文件中

 

# du -b /home  //查看近年来/HOME目录的容量(k)及子目录的容量(k)

 

# du -sh DirPath //以用户易读格式展现目录大小

 

# du -sk DirPath //查看目录的容量(k)

 

# du -sm DirPath  //查看目录的容量(m)

 

# fdisk /dev/sda //对磁盘sda进行分区

 

# fdisk -l  //查看磁盘及分区音讯

 

# sfdisk -l  //查看磁盘及分区新闻

 

# sfdisk -s  //查看系统中负有磁盘的尺寸

 

# fdisk -s /dev/sdb  //突显/dev/sdb设备中有所分区大小总和

 

# fdisk -s /dev/sdb2  //突显/dev/sdb2分区大小

 

# fdisk -v  //显示fdisk版本号

 

# hdparm -i /dev/hda // 查看磁盘参数(仅适用于IDE设备)

 

# mkfs.ext2 /dev/sda1 //格式化sda1为ext2格式

 

# mkfs.ext3 /dev/sda2  //格式化sda2为ext3格式

 

# mount  //显示当前已挂载的文件系统

 

# mount -a
 //搜索/etc/fstab文件中满意条件的文件系统,进行挂载操作。只有root用户可以操作。

 

# mount -l  //列出装有曾经挂载的文件系统列表

 

# mount /dev/sda1 /bbb //挂载sda1到/bbb目录下

 

# mount | column -t // 查看挂接的分区状态

 

# mount -t 文件系统类型 设备路经 访问路经

 

# mount -t iso9600 /dev/cdrom /mnt/cdrom 
//在/mnt/cdrom目录下挂载光驱(iso9600为光盘的标准文件系统项目)

 

# mount /dev/cdrom  /aaa/   //挂载设备CDROM到/aaa/目录下

 

# mount -t ntfs-3g /dev/sdb* /mnt/aaa  //不编译内核,mount ntfs分区

 

# cp /dev/cdrom 123.iso  //将cdrom内容制作成123.iso镜像

 

# mount -t iso9660 -o loop xxx.iso /path  //挂载ISO文件

 

# mount -o loop 123.iso /bbb/  //将123.iso镜像文件挂载到/bbb/下

 

# mount -t isomp4 /dev/cdrom /mnt/cdrom //挂载光驱

 

# mount -t iso9660 /dev/cdrom /mnt/cdrom  //挂载光盘

 

# mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/hda2 
//挂载fat32分区

 

# mount -t ntfs -o nls=utf8,umask=000 /dev/hda3 /mnt/hda3 
//挂载ntfs分区

 

# mount -t vfat /dev/hda6 /mnt/cdrom   //挂第二个ide的第五个逻辑分区

 

# mount -no remount, ro /  //以只读格局再一次挂载/分区

 

# mount -n -o remount, rw / 
//以读写情势再一次挂载/分区(单用户维护情势时有用)

 

# umount /aaa/    //卸载目录/aaa

 

# umount /dev/cdrom  //卸载设备 cdrom

# showmount -e 10.52.19.4  //显示对方服务器nfs共享目录

==========================

参考:

mount远程目录并让当地非root用户可读可写

 

==========================

 

# fuser -km /mnt   //当设备繁忙时强制卸载

 

# eject -n  //查看系统默许的弹出设备

 

# eject  //弹出默许的装备

 

# quotastats  //突显系统磁盘空间限制的此时此刻事态

 

# repquota -a  //显示文件系统的磁盘使用情状

 

# edquota -u ccnp    //对组ccnp设置配额

 

# edquota -u st26    //对用户安装配额

 

# quota -g ccnp   //查看组ccnp配额景况

 

# quota -u st26   //查看用户st26配额景况

 

# quotacheck -cmug /     //创制配额文件

 

# quotacheck -mfvug /    //对文件系统的配额进行一致性检测

 

# quotaon -a  //启用所有的磁盘配额限制

 

# quotaon /home  //启用/home的磁盘空间配额

 

# quotaon -aguv  //不指定分区,使用机动搜索启用磁盘配额

 

# quotaoff -a  //关闭所有配额限制

 

# quotaoff /home  //关闭/home的磁盘配额

 

# quotaoff -aguv  //不指定分区,使用机动检索关闭磁盘配额

 

# quotaoff -aguv  //不指定分区,使用自动检索关闭磁盘配额

 

# reboot  //重启系统

 

# swapon /dev/sdb2  //开启调换分区/dev/sdb2

 

# swapoff /dev/sdb2  //关闭互换分区/dev/sdb2

 

# swapon -s // 查看所有交流分区

 

# grep SwapTotal  /proc/meminfo  //查看swap空间尺寸

 

# swapoff -a  //关闭所有沟通区

 

# swapon -a  //开启所有交流区(与地点成对使用后可使swap还原到起来状态)

 

# fdisk /dev/sdb  //由设备分区(sdb1)来创立SWAP分区,注意分区类型82

 

# mkswap /dev/sdb1  //格式化分区并创造文件系统

 

# vi /etc/fstab  //添加:/dev/sdb1   swap   swap   defaults   0 0 

 

# dd if=/dev/zero of=/data1/image/swap bs=1024 count=2048000 
//添加互换文件并设置其大小为2G

 

# mkswap /data1/image/swap  //创造调换空间

 

# swapon /data1/image/swap  //启动新扩充的2G的交流空间

 

# vi /etc/fstab  //在文书最终参加:/data1/image/swap  swap  swap 
defaults 0 0 使得新加的2G互换空间在系统再度开动后自动生效

 

# vi /etc/fstab //自动挂载磁盘分区,添加: /dev/sdb5 dd ext3 defauls 0 0

 

# vi /etc/fstab 
//修改fstab文件中分区装载设置在defaults后插足usrquota,grpquota
重新挂载文件系统(对根分区设置配额重启)

 

# sync –version  //突显sync命令版本音讯

 

# sync –help  //呈现sync命令的赞助新闻

 

# sync  //将内存数据写入磁盘

 

# rsync -av -e ssh /home/share/*.doc
root@teacher.example.com:/usr/local/share 
//将一台名为student.example.com主机上的/home/share目录中的所有doc文件备份到主机teacher.example.com的/usr/local/share目录下

 

# pvdisplay  //查看组成LVM卷的物理卷(PV)

 

# pvcreate /dev/sdd  //在二级SCSI控制器的附属驱动器上创造一个新物理卷

 

# vgcreate myvolume /dev/sdd1 /dev/sdc2  //创造一个名为myvolume的VG

 

# lvextend -L 2000M /dev/myvolume/mylogical 
//对dev/myvolume/mylogical的容量举行添加

 

# smartctl -H /dev/sdb  //对sdb盘做一下正规自检(PASSED为合格)

 

# tune2fs -l /dev/sdc1 |grep “Block size”  //查看ext3文件系统的block
size(bytes)

 

Block size:               4096

 

 

 

四、文件和目录管理

 

# cat /home/333   //查看/home下文件333的内容(不停顿)

 

# cd  //进入当前帐户所在目录

 

# cd 合营通配符*会更利于些

 

# cd /home/ccc //进入/home/ccc目录

 

# cd –  //可以重回你以前所在的至极目录

 

# cd ../..  //重临上两级目录

 

cp [-adfilprsu] 源文件(source) 目标文件(destination)

cp [options] source1 source2 source3 … directory

参数:

-a:相当于-pdr的意思,见后文(常用);

-d:若源文件为连日来文件属性,则复制连接文件属性而非文件本身;

-f:若目的文件已存在且不可以打开,则删除后再尝试三回;

-i:若目的文件已存在时,在覆盖时会先精通操作的拓展(常用);

-l:举办硬连接的连日文件创造,而非复制文件本身;

-p:连同文件的性质一起复制过去,而非使用默许属性(备份常用);

-r:递归持续复制,用于目录的复制行为(常用);

-s: 复制成为符号链接文件,即“飞快情势”文件;

-u:若destination比source旧才更新destination。最终需注意的是,假使源文件有多个以上,则最后一个目标文件一定若是“目录”才行。

 

# cp 333 /home/ccc //复制文件333到/home/ccc下

 

# cp 333 444 //复制文件333为444(同目录下)

 

# cp -fr test/ /data1/wxr/ 
//复制当前路线下的目录test到指定路线/data1/wxr/

 

# cp .bashrc bashrc  //将 .bashrc 拷贝成 bashrc 那么些文件

 

# cp -a /etc /tmp  //将目录/etc以全体权限复制到/tmp目录

 

# dos2unix a.txt b.txt  //将dos格式的a.txt转换成unix格式的b.txt

 

# dos2unix a.txt 
//直接将a.txt中的^M符号删除(也可用vi命令(:%s/^m//g)删除)

 

# scp -rp /path/filename username@remoteIP:/path  //从A机复制到B机

 

# scp -rp username@remoteIP:/path/filename /path  //从B机复制到A机

 

# cp /dev/cdrom mycdrom.iso 
//将光盘中的内容制成镜像文件,文件名为mycdrom.iso

 

# cp /dev/cdrom mycdrom.iso & 
//将光盘中的内容制成镜像文件,文件名为mycdrom.iso(后台运行,加&)

 

# dd if=/dev/cdrom of=file.iso  //把 CD/DVD 作成 ISO 文件

 

# mkisofs -r -o mybackup.iso /home/backup 
//将/home/backup目录下的拥有文件制成镜像文件,文件名为mybackup.iso

 

# mount -o loop mybackup.iso /mnt 
//将镜像文件mybackup.iso挂接到/mnt目录下

 

# file 222 //突显文件222的文件类型

 

# file *  //彰显当前目录下有所文件的文件类型

 

# find /etc -name “host*” -print 
//在/etc目录中查找文件名以host开首的文本

 

# find  //突显当前目录下拥有情节(无参数)

 

# find $HOME -print  //查找当前用户主目录下的具有文件

 

# find . -group root -exec ls -l { } \; 
//查找系统中具有属于root组的文本

 

# find . -maxdepth 1 -size +1000000c  //查找当前目录下的胜出1M的文件

 

# find . -name “[A-Z]*” -print 
//在当前目录及子目录中查找文件名以大写字母开端的公文

 

# find . -perm -7 -print | xargs chmod o-w 
//在当前目录下搜寻所有用户所有读、写和举办权限的文件,并收回others用户的写权限

 

# find . -perm 755 -print 
//当前目录下查找文件权限位为755的文书,即文件属主可以读、写、执行,其余用户能够读、执行的文本

 

# find . -type d | sort  //查找当前文件系统中的所有目录并排序

 

# find . -type d -exec tree {} \; | more 
//显示当前目录的目录结构并以树形结构分页显示

 

# find . -type f -exec ls -l {} \; | more
//查当前目录下的有着普通文书,并用ls -l命令将它们分页列出

 

# find . -type f -perm 644 -exec ls -l { } \; 
//让当前目录中文件属主具有读、写权限,且文件所属组的用户和其他用户具有读权限的文书

 

# find . -type f -print | xargs file 
//查找当前目录下的公文属于哪一类文件

 

# find / -name “file*” -print | xargs echo “” > /temp/core.log 
//在全路系统中寻觅内存音信转储文件(core dump)
,然后把结果保存到/tmp/core.log 文件中

 

# find / -type f -size 0 -exec ls -l { } \; 
//查找系统中有所文件长度为0的日常文书,并列出它们的完好路径

 

# find /apps -path “/apps/bin” -prune -o -print 
//在/apps目录下(排除/apps/bin目录)查找文件

 

# find /home -name “*.sgy” –print //查找/home下所有sgy文件

 

# find /usr/sam -path “/usr/sam/dir1” -prune -o -print 
//在/usr/sam目录下寻找不在dir1子目录以内的拥有文件

 

# find /var/log -type f -mtime +7 -ok rm { } \; 
//查找/var/log目录中改变时间在7日在此之前的平常文书,并在剔除从前询问它们

# find /data/pa/xyz/ -name “*.cgm” -atime +8 -exec rm -f {} \; 
//查找并删除8日夜(不含8日夜本身)前被访问过的cgm文件

 

# find ~ -print  //查找当前用户主目录下的所有文件

 

# find DirPath -type f | wc -l  //查看某目录下有多少个文本

 

# find -name 11*  //查找文件名包罗11的具备文件

 

# find -user luo  //查找属于用户luo的有着文件

 

# mv 333 /home/ccc //移动文件333到/home/ccc下

 

# mv 333 444 //移动文件333为444(同目录下化名)

 

# mv 目录名 目录名 
//目标目录已存在,源目录移到目的目录,目的目录不存在,改名

 

# rm 333 //删除文件333

 

# touch 333 //创建333空文件

chmod —=0 -w-=2 r–=4  rw-=6 –x=1 -wx=3 r-x=5 rwx=7 s,S,t,T=特殊权限

 

# chmod [ugoa][+-=][rwx] file

u=属主 g=属组 o=其余用户 a=所有用户 rwx=读,写,执行

+-=:加权限,减权限,赋权限

 

# chown -R ow2003 wxr  //更改目录wxr属于用户ow2003

 

# chgrp -R ow2003 wxr  //更改目录wxr属于组ow2003

 

# chgrp root *  //把当前目录中持有文件的组属性设置成root

 

# chmod 765 111
//为111文书的属主设为完全权限,属组设成读写权,其余用户所有读和实践权限

 

# chmod a-r 111 //将111文件所有用户撤除读取权限

 

# chmod g+x 111 //将111文件属组伸张执行权限

 

# chmod o+r 111 //将111文件其他用户增加读取权限

 

# chmod u+w 111 //将111文件属主增加可写权限

 

# chmod g-r,o-r 111  //去掉文件111的同组和其余用户的读权限

 

# chmod o=rwx 111  //重设文件111的其他用户权限为读、写执行

 

# chown :benet 222 //更改文件222属于组benet

 

# chown st03 222 //更改文件222属于用户st03

 

# chown st03:benet 222 //更改文件222属于用户st03组benet

 

# find / -perm -u+s  //罗列一个系统中保有应用了SUID控制的公文

 

# chmod u+s /bin/file1  //设置一个二进制文件的 SUID 位 –
运行该公文的用户也被予以和所有者同样的权限

 

# chmod u-s /bin/file1  //禁用一个二进制文件的 SUID位

 

# chmod g+s /home/public  //设置一个目录的SGID 位 – 类似SUID
,可是那是本着目录的

 

# chmod g-s /home/public  //禁用一个目录的 SGID 位

 

# chmod o+t /home/public  //设置一个文本的 STIKY 位 –
只同意合法所有人删除文件

 

# chmod o-t /home/public  //禁用一个索引的 STIKY 位

 

# cut -d “:” -f 1,7 /etc/passwd  //只突显第一列(user ID)和第 7 列(user
shell) 内容

 

# file  //查看文件类型

 

# grep 字符 文件名 //根据字符匹配来查看文件部分情节

 

# head 10 /home/333 //查看/home下文件333的头部10行内容

 

# less用法:

 

空格键:向下翻动一页;

 

[PageDown]:向下翻动一页;

 

[PageUp]:向上翻动一页;

 

/字符串:向下询问“字符串”的效用;

 

?字符串:向上查询“字符串”的出力;

 

n:重复前一个查询(与/或?有关);

 

N:反向重复前一个询问(与/或?有关);

 

q:离开less这几个程序。

 

# less /home/333 //查看/home下文件333的始末(分屏,可以往前翻页)

 

# ln -s source_dir destination_dir 
//将目的目录链接到源目录。用相对路径。在与源目录的同级目录处创造。文件链接同理。用ls
-l查看,会看到destination_dir -> source_dir 如:

 

# ln -s /home /disk1

 

# ls -l

 

lrwxrwxrwx    1 root   root     4 Apr  7  2010 disk1 -> home/

 

 

 

# unlink destination_dir  //裁撤目的目录与源目录的链接

 

# ll -h  //以用户不难辨认的法子的长格式突显当前目录的情节

 

# lsattr -a  //显示所有文件和情节,包含现行目录“.”与上层目录“..”

 

# lsattr -R  //递归彰显目录下的富有文件和子目录

 

# lsattr test  //突显文件test有总体性

 

# ls  //以短格式显示当前目录的情节

 

# ls *  //突显当前目录下的拥有文件

 

# ls -l  //以长格式突显当前目录的始末

 

# ls -l /home/bbb/   //呈现指定目录/home/bbb的情节

 

# ls -l 111   //只突显当前目录下文件111的新闻

 

# ls c*  //列出当前目录下以字母“c”开首的文本

 

# ls ??n*  //列出当前目录下拥有第3个字母是“n”的文书

 

# ls [b,c]*  //显示所有以字母b或c起首的公文名

 

# ls -F | grep /$  //只列子目录(短格式)

 

# ls -l | grep “^d”  //只列子目录(长格式)

 

# ls -l |grep “^-“|wc -l  //总结当前目录下的公文数

 

# ls -l |grep “^d”|wc -l  //统计当前目录下的目录数

 

# ls -lSr |more   //以尺寸大小排列文件和目录

 

# ls –color=never  //不要按照文件特性给予颜色

 

# ls –color=always  //突显颜色

 

# ls –color=auto  //让系统自动根据设置来判断是或不是予以颜色

 

# ls –full-time  //以全部时间形式(包括年、月、日、时、分)输出

 

 

 

# lsof |grep 文件系统的挂接点 
//查看是还是不是有其他程序正在接纳挂接点的文件系统

 

# man -t ls | ps2pdf – ls.pdf  //创制ls命令的pdf格式文件

 

# man -t manpage | ps2pdf – filename.pdf  //创设man的pdf格式文件

 

# mkdir ddd   //在当前目录下创办ddd目录

 

# mkdir -p /a/b/c //创造/a/b/c目录(多层目录)

 

# mkdir -m a=r wxr  //成立一个目录wxr且指定该目录的性质为对富有用户可读

 

# mkdir -m 700 /data1/wxr/test 
//成立新目录/data1/wxr/test,且指定权限为700

 

# more /home/333 //查看/home下文件333的内容(仅分屏)

 

# nl  filename  //呈现文件内容时,同时输骑行号

 

# od  filename  //以二进制形式读取文件内容

 

# pwd //突显当前所在目录

 

# rmdir ddd   //删除ddd目录(空)

 

# rm -r ddd   //删除ddd目录(非空,先询问)

 

# rm -rf ddd //直接删除ddd目录(非空,不了然)

 

# rm -f /data/*.cgm 
//一流用户下删除/data目录下所有.cgm文件(不再询问)

 

# rm  -i -r ddd  //交互形式删除ddd目录(删除前先驾驭)

 

# \rm -r ddd/*    //删除ddd目录下文件(不打听)

 

# sed -n ‘5,10p’ /etc/passwd  //只查看passwd的第5行到第10行内容

 

# setfacl -m u:ow2003:rwx /home/hoework 
//对用户ow2003设置对/homework目录的读、写和举办权限

 

# setfacl -m u:ow2003:rw /home/hoework 
//对用户ow2003设置对/homework目录的读、写权限

 

# setfacl -m u:dba:r /home/hoework 
//对用户组dba设置对/homework目录的读权限

 

# setfacl l -x u:dba /home/hoework  //删除用户组dba的权力

 

# setfacl -d g:rw  /home/ftp 
//对/home/ftp目录的用户组设定默许的权限为读、写(若组中用户重新指定了权力,则默许的组权限将被遮盖,即现实指定的ACL权限优先于默许ACL权限)

 

# sort /home/ow2003/dk  //突显文档dk内容并排序

 

# split -b 900m file file_part  //把文件file以900m增量来划分

 

# cat file_part* >file  //将划分后的文书再度组建

 

# tac /home/ow2003/dk  //以逆序显示文档dk内容(注:与cat相反)

 

# tail 10 /home/333 //查看/home下文件333的尾部10行内

 

# touch aa  //使用touch命令创设aa文件(aa文件不设有)

 

# touch aa  //使用touch命令更新文件aa的时辰为当下时刻(aa文件存在)

 

# touch aa -t 200808081500.00 
//更新文件aa的存取时间为指定时间二零零六年四月8日15点

 

# tree  //突显文件和目录由根目录开端的树形结构

 

# wc /home/ow2003/dk  //展现文档dk的行数、词数和字数

 

# which ssh 
//通过命令which,查找文件ssh(其搜索范围由环境变量$PATH设置)

 

# yes |rm *.cgm  //自动回答rm提出的标题,无需用户再连接输入yes

 

 

 

五、备份与削减

 

# dd if=/dev/sda | gzip -c | ssh user@ip ‘dd of=/mnt/backups/sda.dd’ 
//通过ssh复制整个硬盘到长途目录(带压缩)

 

# tar -c 创造包;-x 释放包;-v 展现命令进度;-z 代表压缩包;-t
列出包文件(打包时应竭尽拔取相对路径,而不用相对路径)         

 

# tar -cvf wxr.tar wxr //把当前wxr目录打包

 

# tar -cvf wxr.tar wxr –exclude ‘*.3dv’ –exclude ‘*.3dh’ –exclude
‘*.cgm’ –exclude ‘*.inp’ 
//把当前wxr目录打包,并排除.3dv、.3dh、.cgm、.inp文件

 

# tar -zcvf apache.tar.gz –exclude=c –exclude=d   apache 
//若/opt/apache/目录下有 a,b,c,d目录,只打包a 、b目录,不打包c
、d目录

 

# tar -zcvf wxr.tar.gz wxr //把当前wxr目录打包压缩

 

# tar -hcvf wxr.tar wxr  //对目录wxr中链接文件也一并封装

 

# tar -rvf wxr.tar file1  //向wxr.tar包添加文件file1

 

# tar -tf  wxr.tar //查看包wxr.tar内容

 

# tar -tzf wxr.tar.gz //查看压缩包wxr.tar.gz的情节

# tar -jtv -f wxr.tar.bz2 //查看压缩包wxr.tar.bz2的内容

# tar -jcv -f wxr.tar.bz2 bar/  //将目录bar打包并减弱为wxr.tar.bz2

 

# tar -jxv -f wxr.tar.bz2  //对打折扣包wxr.tar.bz2解压复苏

 

# tar -jxv -f wxr.tar.bz2 -C bar/  //将减小包解压到目录bar/      

 

# tar -xvf  wxr.tar -C /home  //复苏包wxr.tar到指定目录/home

 

# tar -xvf wxr.tar  //解压缩包wxr.tar

 

# tar -xzf  wxr.tar.gz -C /home
//复苏压缩包wxr.tar.gz到指定目录/home(不带-C则回复到原目录)

 

# tar -xzf wxr.tar.gz  //解压缩包wxr.tar.gz    

 

# tar -xzf wxr.tar.gz blah.txt  //从压缩包wxr.tar.bz2解压出文件blah.txt

 

# tar -zcvf wxr.tar.gz /project //把目录project打包并减弱

 

# tar -zxvf wxr.tar.gz    //压缩包的文件解压復苏

# tar cvf – dir1 dir2 | (cd /dir3; tar xvf – )  //将当前目录dir1
dir2边打包边释放到/dir3目录下

 

# for ARK in ./*.tar.gz; do tar xvf $ARK; done  //解压当前目录下的所有
.tar.gz 结尾的公文(把当前目录下有所的 .tar.gz 文件的文件名逐一赋给变量
ARK,让 tar 来引用 ARK 变量)

 

# dump -0f home.dump /home  //将/home目录备份到文件home.dump

 

# dump -0j -f /root/etc.dump.bz2 /etc  //备份/etc目录并含压缩效率

 

# restore -rvf home.dump  //恢复home目录

 

# restore -tf home.dump  //查看备份文件home.dump的文本列表

 

# dump -w  //查看有无任何文件系统被dump过的数码

 

# zip -r data.zip data //将data文件夹压缩成了data.zip格式

# unzip data.zip //将data.zip文件解压到近期文件夹

# zip -r yasuo.zip abc.txt dir1
//把一个文书abc.txt和一个目录dir1压缩成为yasuo.zip

# unzip yasuo.zip //解压缩yasuo.zip文件

# unzip abc\?.zip
//将当前目录下的abc1.zip,abc2.zip和abc3.zip一起解压缩(?表示一个字符,若是用*代表任意多少个字符) 

# unzip -v large.zip //不解压,只想查看压缩文件large.zip的情节

# unzip -t large.zip //检验压缩文件large.zip是或不是下载完全了

# unzip -j music.zip
//用-v选项发现music.zip里有不可计数目录,且子目录中均为mp3文件,若想把那几个文件都下载到第超级目录,而非一层一层建目录

 

六、网络管理与连锁应用

 

# arp -a | awk ‘{print $4}’  //获得网卡的 MAC地址

 

# dd if=/dev/zero bs=4096 count=1048576 | ssh user@ip ‘cat >
/dev/null’  //不浪费磁盘的场馆下测试网络速度(通过 ssh 发送 4 GB
数据到长途主机,但不会占用其余磁盘空间)

 

# dmesg | grep eth  //显示每个网卡的硬件配置新闻

 

# echo 1 >/proc/sys/net/ipv4/icmp_echo_ignore_all  //关闭ping

 

# echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all  //重启ping

 

# ethtool eth0  //展现或改动网卡设置(参考:man ethtool)

 

# ifconfig //查看当前卓有成效网络接口音讯

 

# ifconfig -a  //查看当前有所网络接口新闻

 

# ifconfig eth0 //查看指定网络接口eth0信息

 

# ifconfig eth0 192.168.1.11 
//设置eth0接口IP地址(标准掩码)(相当于动态修改IP)

 

# ifconfig eth0 192.168.1.11 netmask 255.255.255.128
//设置eth0接口IP地址及子网掩码

 

# ifconfig eth0 hw ether 000C1254D321 //更改网卡物理地址

 

# ifconfig lo  //查看lo状态

 

# ifdown eth0  //禁用eth0互连网接口

 

# ifdown lo  //关闭本地回环互连网接口

 

# ifup eth0  //启用eth0互联网接口

 

# ifup lo  //启动本地回环网络接口

# ip ad sh  //显示IP地址等音信

 

# iptables -L  // 查看防火墙设置

 

# iptraf  //可交互式IP网络监控工具

# mii-tool -v  //查看网卡有关音信

 

# netconfig  //设置互连网环境

 

# netstat -antp  // 查看所有曾经建立的屡次三番

 

# netstat -apt 
//突显所有TCP应用程序所运用的端口号,并突显拔取此端口号的长河

 

# netstat -lntp  // 查看所有监听端口

 

# netstat -s // 查看网络总计信息

 

# netstat -tulnp  //如今系统上已在监听的网络连接及其PID

 

# ping 10.52.19.187  //检测到10.52.19.187以内是或不是衔接

 

# ping -c 5 10.52.19.187  //向10.52.19.187殡葬5个分组报文

 

# ping -s 6553 -c 5 10.52.19.187 
//向10.52.19.187殡葬5个分组、每组大小为6553字节的报文(注:最大分组报文不可能超过65507字节)

 

# ping -c 8 -i 3 -s 1024 -t 25 10.52.19.187 
//向10.52.19.187以3秒间隔、包大小1024字节、IP生存期25、8个包发送报文

 

# route -n  // 查看路由表

 

# tracepath 10.52.19.189  //突显三番五次到10.52.19.189的路由

 

# traceroute -n 10.52.19.190 
//对到达10.52.19.190的路由进行跟踪,且使用IP地址表示每一跳主机

 

# ss  //显示互联网套接字信息,它同意突显类似netstat一样的音信

 

# wget 192.168.20.148  //从网站192.168.20.148下载资料

 

 

 

动态扩大IP

 

# traceroute 211.148.192.136 //检测到目标IP经过的路由新闻

 

# hostname //查看主机名称

 

# hostname luo //设置主机名称为 luo

 

# ping 192.168.1.10 //Ping主机192.168.1.10

 

# ifconfig eth0 add 10.52.19.147

 

# ifconfig eth0:0 broadcast 10.52.19.255

 

 

 

DNS域名

 

# nslookup 待解析域名(或IP)

 

# nslookup 211.148.192.136 //反向解析IP—域名

 

# nslookup www.163.com   //解析指定的域名—IP

 

# route add default gw 192.168.1.1 //添加默许网关为192.168.1.1

 

# route del default gw 192.168.1.1 //删除默许网关为192.168.1.1

 

 

 

NFS服务

 

# exportfs -auv   //甘休输出所有共享目录

 

# exportfs -av  //输出启用所有共享目录

 

# exportfs -rv    //重新出口共享目录

 

# mount -t nfs 192.168.2.10:/luo /wei //在客户机上挂载共享目录到/wei

 

# service iptables stop //关闭防火墙

 

# service nfs start //启动nfs服务

 

# service portmap start //启动portmap服务

 

# showmount -a    //展现NFS服务器的客户与被挂载目录

 

# showmount -d    //显示NFS服务器被挂载的目录

 

# vi /etc/exports  //修改共享配置文件(加共享目录)

 

showmount -e 192.168.2.10 6  //在客户上查看服务器共享目录

 

 

 

配备文件

 

vi /etc/hosts  vi /etc/network //修改主机名称配置文件

 

vi /etc/rc.local //修改mac地址配置文件

 

vi /etc/resolv.conf //修改DNS配置文件

 

vi /etc/sysconfig/network-scripts/ifcfg-eth0 //修改网卡配置文件

 

vi /var/spool/cron/username  //修改cron职分安顿文件

 

vi /var/spool/mail  //修改邮件配置文件

 

 

 

七、vi/vim编辑器

 

也可建立vi到vim的标记连接(即事实上调用的是vim)

 

# mv /bin/vi /bin/vi.bak

 

# ln -s /usr/bin/vim /bin/vi

 

 

 

进入vi的命令:

 

vi  直接进去编辑并创造新文件

 

vi filename  编辑文件(不设有则开创文件),并将光标置于第一行首

 

vi +n filename  打开文件,并将光标置于第n行首

 

vi + filename   打开文件,并将光标置于最后一行首

 

vi +/pattern filename  打开文件,并将光标置于第三个与pattern匹配的串处

 

vi -r filename   在上次正用vi编辑时发出系统崩溃,复苏文件

 

vi file1….filen   打开四个公文,依次展开编制

 

vi -o aaa bbb   水平窗口打开aaa,bbb五个文件

 

vi -O aaa bbb  
垂直窗口打开aaa,bbb五个文本(Ctrl+W两遍可在八个公文间切换)

 

多文本编辑的按键:

:n  编辑下一个文本

:N  编辑上一个文书

:files  列出近来那些vi的开拓的持有文件

 

多窗口情状下的按键功用:

:sp [filename] 
打开一个新窗口,若是有加filename,表示在新窗口打开一个新文件,否则表示七个窗口为同一个文件内容(同步突显)

 

[ctrl]+w+j

[ctrl]+w+↓  
按键的按法是:先按下[ctrl]不放,再按下w后加大所有的按键,然后再按下j(或向下箭头键),则光标可活动到凡间的窗口

 

[ctrl]+w+k

[ctrl]+w+↑    同上,不过光标移动到上边的窗口

 

[ctrl]+w+q   
其实就是:q截至离开。例如,想要为止下方的窗口,那么利用[ctrl]+w+↓移动到人间窗口后,按下:q即可离开,也得以按下[ctrl]+w+q

 

块接纳的按键意义:

v  字符拔取,将光标经过的地点反白选取

 

V  行选取,将光标经过的行反白选拔

 

Ctrl + v  块接纳,可以用长方形的不二法门拔取数据

 

y  将反白的地点复制起来

d  将反白的地方删除

 

 

还原命令:

 

u  復苏最终一个发令以前的结果

.  继续最终一个命令的推行结果

 

ctrl+r  撤消苏醒

 

U  苏醒光标该行之具备改变

 

 

 

举手投足光标命令:

 

h   光标左移一个字符

 

l   光标右移一个字符

 

space  光标右移一个字符

 

Backspace  光标左移一个字符

 

k或Ctrl+p  光标上移一行

 

j或Ctrl+n   光标下移一行

 

Enter   光标下移一行

 

w或W   光标右移一个字至字首

 

b或B   光标左移一个字至字首

 

e或E   光标右移一个字至字尾

 

)   光标移至句尾

 

(   光标移至句首

 

}  光标移至段落初步

 

{  光标移至段落结尾

 

nG  光标移至第n行首

 

n+  光标下移n行

 

n-  光标上移n行

 

n$  光标移至第n行尾

 

H   光标移至显示屏顶行

 

M   光标移至屏幕中间行

 

L   光标移至显示器最后行

 

0  (注意是数字零)光标移至近年来行首

 

$  光标移至近年来行尾

 

 

 

翻屏命令:

 

Ctrl+u  向文件首翻半屏

 

Ctrl+d  向文件尾翻半屏

 

Ctrl+f  向文件尾翻一屏

 

Ctrl+b  向文件首翻一屏

 

nz  将第n行滚至屏幕顶部,不指定n时将眼前行滚至显示器顶部

 

 

 

安顿文本、复制与粘贴:

 

i   在光标前插入

 

I   在当下行首插入

 

a  在光标后插入

 

A  在现阶段行尾插入

 

o  在近日行之下新开一行

 

O  在当下行之上新开一行

 

r  替换当前字符

 

R  替换当前字符及事后的字符,直至按ESC键

 

s  从当下光标地点处开首,以输入的文本替代指定数量的字符

 

S  删除指定数量的行,并以所输入文本代替之

 

ncw或nCW  修改指定数量的字

 

nCC  修改指定数量的行

 

yy  p  复制当前行,并粘贴到下一行

nyy  n为数字。复制光标所在的向下n行,例如20yy,则是复制20行

y1G  复制光标所在行到第一行的所有数据

yG   复制光标所在行到最终一行的富有数据

y0    复制光标所在的越发字符到该行行首的有着数据

y$    复制光标所在的不胜字符到该行行尾的拥有数据 

 

shift + i  在该行之首插入字符

 

shift + a   在该行末尾输入字符

 

shift + r  改写自光标地方及末端的持有情节

 

shift +o  在光标之上新增一行输入字符

 

 

 

去除命令:

 

ndw或ndW  删除光标处早先及然后的n-1个字

 

d0  删至行首(为数字0)

 

d$  删至行尾

shift + d  剪切至行尾

 

dd  删除一行

 

ndd  删除自光标伊始的n行

 

s  删除光标所在之字符,并进入输入格局直到《ESC》

 

S  删除光标所在之该行资料,并进入输入方式直到《ESC》

 

x或X  删除一个字符,x删除光标后的,而X删除光标前的

nx  n为数字,再而三向后删除n个字符。如,要一而再删除10个字符,则:“10x”

 

Ctrl+u  删除输入格局下所输入的文本

 

 

 

查找及替换命令:

 

/pattern  从光标开端处向文件尾搜索pattern

 

?pattern  从光标起先处向文件首搜索pattern

 

n  在一如既往方向重复上四次搜索命令

 

N  在反方向上再度上三遍搜索命令

 

:s/p1/p2/  替换当前行第二个p1为p2

 

:s/p1/p2/g  将如今行中具备p1均用p2替代

 

:n1,n2s/p1/p2/g  将第n1至n2行中装有p1均用p2替代

 

:g/p1/s//p2/g  将文件中存有p1均用p2替换

 

: 1,$s/old/new/g  将文件中保有的『old』改成『new』

: 1,$s/old/new/gc 
将文件中享有的『old』改成『new』,并在改前提示用户确认

 

: 10,20s/^/ /  将第10行至第20行资料的最终边插入5个空格

 

: %s/^m//g  删除文件中兼有的^M符号

 

 

 

接纳设置:

 

all  列出所有选项设置情形

 

term  设置极端类型

 

ignorance  在寻找中忽视大小写

 

list  突显制表位(Ctrl+I)和行尾标志($)

 

number  展现行号

 

report  突显由面向行的通令修改过的多少

 

terse  显示简短的警告音讯

 

warn  在转到其他文件时若没封存当前文件则体现NO write新闻

 

nomagic  允许在查找方式中,使用前边不带“\”的特殊字符

 

nowrapscan  禁止vi在寻觅到达文件两端时,又从另一端起来

 

mesg  允许vi呈现其余用户用write写到自己极限上的音信

 

 

 

最后行措施命令:

 

:n1,n2 co n3  将n1行到n2行之间的情节拷贝到第n3行下

 

:n1,n2 m n3  将n1行到n2行之间的始末移至到第n3行下

 

:n1,n2 d   将n1行到n2行之间的始末剔除

 

:e filename  打开文件filename进行编制

 

:e! dd   强制关闭当前文件(不保留)打开新文件dd

 

: e!  放任修改重新编辑 

 

:q!  不保留文件并脱离vi

 

:r fff 在当前岗位读入fff文件

 

:set nonu 不展现行号

 

:set nu 展现行号

 

:w  保存输入的内容到如今文件

 

:w eee 另存为eee文件

 

:wq  保存并退出

 

:x  保存当前文件并退出

 

:n1,n2 w eee  将文件中n1行至n2行的情节保留成eee文件

:!command  暂时离开vi到命令行格局下执行command的显得结果。例如,“:! ls
/home”即可在vi当中查看/home下边以ls输出的文书音讯

 

 

 

寄存器操作:

 

“?nyy 
将眼前行及其下n行的内容保留到寄存器?中,其中?为一个假名,n为一个数字

 

“?nyw  将眼前行及其下n个字保存到寄存器?中,其中?为一个假名,n为一个数字

 

“?nyl 
将如今行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字

 

“?p 
取出寄存器?中的内容并将其放置光标地方处。那里?可以是一个字母,也得以是一个数字

 

ndd  将眼前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中

 

vim操作环境(不指出修改/etc/vimrc文件;指出手动修改~/.vimrc文件)

 

vim常用命令示意图

 

 

 

 

 

 

八、shell编程

 

# grep $LOGNAME /etc/passwd  //显示当前报到用户采纳的shell

 

# sh  //启动bsh(为Bourne Shell的简称—伯恩shell)

 

# bash  //启动bash(为Bourne Again Shell的简称)

 

# csh  //启动C Shell

 

# type [-tpa] name  //bash shell的嵌入命令。

type:不加任何参数时,type会展现出name是外部命令照旧bash内置命令

-t :当进入-t参数时,type会将name以上面这么些字眼突显出它的含义:

       file:表示为外部命令

       alias:表示该命令为命令别名所设置的名目;

       builtin:表示该命令为bash内置的指令效率。

-p :假若前边接的name为外部命令时,才会突显完整文件名;

-a :会由PATH变量定义的不二法门中,将具备含name的通令都列出来,包蕴alias

 

# cp /var/spool/mail/root  /etc/crontab \

>  /etc/fstab  /root 
//将两个文件复制到root目录下(如若命令串太长的话,可以用两行来输出)。“\[Enter]”为转义符,“>”为系统自动现身的,不须求输入。

 

# source  ~/.bashrc  //将主文件夹的~/.bashrc的安装读入近期的bash环境中

 

# .  ~/.bashrc   //将主文件夹的~/.bashrc的装置读入如今的bash环境中

 

 

# ll -d /etc/cron*  //找出/etc/上面以cron为开始的公文名

 

# ll -d /etc/?????  //找出/etc/上边文件名正如若多少个字母的文件名

 

# ll -d /etc/*[0-9]*  //找出/etc/上面文件名含有数字的公文名

 

# ll -d /etc/[^a-z]*  //找出/etc/上边文件名起初非为小写字母的文本名

 

# cp -a /etc/[^a-z]* /tmp  //将上例找到的文书复制到 /tmp中

 

# last | cut -d  ‘ ‘  -f1 | sort  //将出口的多少仅取账号,并加以排序

# last | cut -d  ‘ ‘  -f1 | sort  | uniq 
//将出口的数目仅取账号,排序后仅取出一位

# last | cut -d  ‘ ‘  -f1 | sort  | uniq  -c 
//将出口的数据仅取账号,排序后仅取出一位并出示每个账号登录的总次数

 

# last | grep [a-zA-Z] | grep -v ‘wtmp’| wc -l 
//显示登录种类的总人数

 

# last | tee  last.list | cut -d  “ “  -f1 
//将last的输出存一份到last.list文件中

 

# ls -l /home | tee  ~/homefile | more 
//将ls的多少存一份到~/homefile,同时显示屏也有出口新闻

 

# ls -l / | tee  -a  ~/homefile | more  //加上-a参数则能将消息添加

 

# cp /etc/passwd  /root/passwd && unix2dos /root/passwd

 

# file /etc/passwd /root/passwd

 

# cat /root/passwd | tr -d  ‘\r’ > /root/passwd.linux

 

# ll  /etc/passwd  /root/passwd* 
//将/etc/passwd转存成dos断行到/root/passwd中,再将^M
符号删除。\r指的是dos的断行字符 ^M

 

# cat  -A /etc/man.config

 

# cat /etc/man.config | col  -x | cat  -A | more  //利用cat  -A
突显所有越发按键,最后以
col将[tab]转成空白。下面看到的^I符号就是tab,如此一来,[tab]按键会被调换成为空格键,输出就赏心悦目多了

 

# man col > /root/col.man

 

# vi /root/col.man

 

# man col | col  -b > /root/col.man  //将col的man
page转存成为/root/col.man的纯文本文件

 

#############################################

 

通配符与特殊符号

符号   意义

*      代表『 0 个到用不完多个』任意字符

?      代表『一定有一个』任意字符

[ ]    同样表示『一定有一个在括号内』的字符(非任意字符)。例如 [abcd]
代表『一定有一个字符, 可能是 a, b, c, d 这多个其余一个』

[ – ]  若有减号在中括号内时,代表『在编码顺序内的兼具字符』。例如
[0-9] 代表 0 到 9 之间的所有数字,因为数字的语系编码是连续的!

[^ ]   若中括号内的第二个字符为指数符号 (^) ,那表示『反向选取』,例如
[^abc] 代表 一定有一个字符,只如若非 a, b, c 的其它字符就承受的意思。

 

bash 环境中的特殊符号

符号   内容

#      批注符号:那么些最常被采取在 script
当中,视为表达!在后的数额均不运行

\      跳脱符号:将『特殊字符或通配符』还原成一般字符

|      管线 (pipe):分隔八个管线命令的限定(后两节介绍);

;      连续命令下达分隔符:一连性命令的界定 (注意!与管线命令并分裂)

~      用户的家目录

$      取用变量前导符:亦即是变量从前要求加的变量取代值

&      工作控制 (job control):将指令变成背景下办事

!      逻辑运算意义上的『非』 not 的意趣!

/      目录符号:路径分隔的标记

>, >>  数据流重导向:输出导向,分别是『取代』与『累加』

<, <<  数据流重导向:输入导向 

‘ ‘    单引号,不具有变量置换的作用

” ”    具有变量置换的效益!

` `    两个『 ` 』中间为可以先运行的命令,亦可使用 $( )

( )    在中间为子 shell 的苗头与为止

{ }    在中游为命令区块的组成!

 

#############################################

 

# dmesg | grep -n -color=auto ‘eth’ 
//用dmesg列出基础新闻,再以grep找出内含eth的那一个行,并显色、加上行号

 

# dmesg | grep -n -A3 -B2 -color=auto ‘eth’ 
//承上,在第一字所在行的前两行与后三行也一路找出来显示

 

#############################################

 基础正则表达式字符 (characters)

 

^word

意思:待查找的字符串(word)在行首

范例:查找行首为 # 开端的那一行,并列出游号

grep -n ‘^#’ regular_express.txt

 

word$

意义:待查找的字符串(word)在行尾

范例:将行尾为 ! 的那一行列印出来,并列骑行号

grep -n ‘!$’ regular_express.txt

 

.

意义:代表一定有一个自由字符的字符

范例:查找的字符串可以是 (eve) (eae) (eee) (e e), 但不可能仅有 (ee),亦即
e 与 e 中间“一定”仅有一个字符,而空格符也是字符

grep -n ‘e.e’ regular_express.txt

 

\

意思:转义字符,将特殊符号的不一致平日意义去除

范例:查找含有单引号 ‘ 的那一行

grep -n \’ regular_express.txt

 

*

意义:重复零个到用不完四个的前一个 RE(regular)字符

范例:找出含有 (es) (ess) (esss) 等等的字符串,注意,因为 * 可以是 0
个,所以 es 也是符合带查找字符串。其余,因为 * 为重复“前一个 RE
字符”的符号, 因此,在 * 在此以前必必要紧接著一个 RE
字符喔。例如任意字符则为 “.*” 

grep -n ‘ess*’ regular_express.txt

 

[list]

意思:从字符集合的 RE 字符里面找出想要选取的字符

范例:查找含有 (gl) 或 (gd) 的那一行,要求尤其留心的是,在 []
当中代表一个待查找的字符, 例如“ a[afl]y ”代表查找的字符串可以是 aay,
afy, aly 即 [afl] 代表 a 或 f 或 l 的意思

grep -n ‘g[ld]’ regular_express.txt

 

[n1-n2]

意思:从字符集合的 RE 字符里面找出想要选择的字符范围

范例:查找含有任意数字的那一行。需更加专注,在字符集合 [] 中的减号 –
是有异样意义的,他意味着五个字符之间的富有连接字符。但这些连续与否与 ASCII
编码有关,由此,你的编码需求配备不错(在 bash 当中,须要规定 LANG 与
LANGUAGE 的变量是或不是科学)。例如所有大写字符则为 [A-Z]

grep -n ‘[A-Z]’ regular_express.txt

 

[^list]

意思:从字符集合的 RE 字符里面找出不要的字符串或限制

范例:查找的字符串可以是 (oog) (ood) 但不可以是 (oot) ,这些 ^ 在 []
内时,代表的意思是“反向拔取”的意味。例如,我不用大写字符,则为
[^A-Z]。可是,须求尤其注意的是,假使以 grep -n [^A-Z]
regular_express.txt
来搜寻,却发现该公文内的富有行都被列出,为啥?因为那个 [^A-Z]
是“非大写字符”的意味, 因为每一行均有非大写字符,例如第一行的 “Open
Source” 就有 p,e,n,o等小写字符

grep -n ‘oo[^t]’ regular_express.txt

 

\{n,m\}

意思:接二连三 n 到 m 个的前一个 RE 字符,若为 \{n\} 则是连接 n 个的前一个
RE 字符,若是 \{n,\} 则是三番五次 n 个以上的前一个 RE 字符

范例:在 g 与 g 之间有2个到3个的o存在的字符串,亦即 (goog)(gooog)

grep -n ‘go\{2,3\}g’ regular_express.txt

======================================

# test -e /pa/lamprj && echo “exist” || echo “Not exist” 
//检查/pa/lamprj目录是还是不是存在

 

======================================

文件测试的标志与意义:

 

关於某个文件名的“文件类型”判断,如 test -e filename 表示存在否

-e  该公文名是不是留存?(常用)

-f  该文件名是还是不是存在且为文件(file)(常用)

-d  该公文名是或不是留存且为目录(directory)(常用)

-b  该文件名是或不是存在且为一个 block device 设备

-c  该文件名是不是留存且为一个 character device 设备

-S  该文件名是还是不是存在且为一个 Socket 文件

-p  该文件名是或不是留存且为一个 FIFO (pipe) 文件

-L  该公文名是不是存在且为一个连着文件

 

关於文件的权力检测,如 test -r filename 表示可读否 (但 root
权限常有两样)

-r  检测该文件名是或不是存在且所有“可读”的权杖

-w  检测该公文名是不是存在且具备“可写”的权位

-x  检测该公文名是或不是留存且有着“可举办”的权力

-u  检测该文件名是或不是留存且富有“SUID”的品质

-g  检测该文件名是不是存在且有着“SGID”的特性

-k  检测该公文名是还是不是存在且具有“Sticky bit”的习性

-s  检测该公文名是或不是留存且为“非空白文件”

 

三个文本之间的可比,如:test file1 -nt file2

-nt  (newer than)判断 file1 是否比 file2 新

-ot  (older than)判断 file1 是否比 file2 旧

-ef  判断 file1 与 file2 是不是为同样文件,可用在认清 hard link 的判断上。
首要意义在认清多个文本是还是不是均指向同一个 inode

 

关於多少个整数之间的论断,例如 test n1 -eq n2

-eq  两数值相等 (equal)

-ne  两数值不等 (not equal)

-gt  n1 大於 n2 (greater than)

-lt  n1 小於 n2 (less than)

-ge  n1 大於等於 n2 (greater than or equal)

-le  n1 小於等於 n2 (less than or equal)

 

判断字串的多少

test -z string  判定字串是还是不是为 0,若 string 为空字串,则为 true

test -n string  判定字串是还是不是非为0,若 string 为空字串,则为 false

                   注:-n 亦可省略

 

test str1 = str2  判定 str1 是不是等於 str2 ,若相等,则回传 true

test str1 != str2 判定 str1 是还是不是不等於 str2 ,若相等,则回传 false

 

多重原则判定,例如:test -r filename -a -x filename

-a  七个条件还要创设!例如 test -r file -a -x file,则 file 同时负有 r
与 x 权限时,才回传 true

-o  任何一个标准建立!例如 test -r file -o -x file,则 file 具有 r 或 x
权限时,就可回传 true

!   反相状态,如 test ! -x file ,当 file 不具有 x 时,回传 true

 

=======

常用shell命令组合

# kudzu –probe –class=network  //kudzu查看网卡型号

# ps -e -o “%C : %p : %z : %a”|sort -k5 -nr 
//查看进程,按内存从大到小排列

# ps -e -o “%C : %p : %z : %a”|sort -nr  //按cpu利用率从大到小排列

# ls /etc/rc3.d/S* |cut -c 15-  
//显示运行3级别开启的服务(从中精晓到cut的用途,截取数据)

# ifconfig eth0 |grep “inet addr:” |awk ‘{print $2}’|cut -c 6- 
//显示IP地址

# free -m |grep “Mem” | awk ‘{print $2}’  //展现内存的轻重

# cat /proc/cpuinfo |grep -c processor  //显示CPU的数量

# mpstat 1 1  //显示CPU负载

# du -cks * | sort -rn | head -n 10 
//显存当前路线下从大到小排序的前10个文件或目录大小

# iostat -x 1 2  //磁盘I/O负载

# sar -n DEV  //互连网负载

# ps aux | wc -l  //进程总数

 

相关文章