三、常规命令

三、 常规命令
基本介绍

    [root@localhost ~]# 
        ~:表示当前操作位置在用户家目录
        #:表示超级用户登录,普通用户登录时显示为“$”
    ll -i   (显示结果)
    130574      drwxr-xr-x.     2       root        root    4.0K    6月   6 12:17    123
    inode号      权限级别        引用数 所有者     所属组 大小          时间          文件名

引用计数:
  对于文件:表示文件硬链接数
  对于目录:目录下一级子目录的个数
命令选项:用于调整命令功能
参数:是命令操作的对象,若省略,则代表默认。

目录命令
cd      切换目录    i显示inode        h常用单位   a显示所有   d当前目录
pwd     显示当前所在目录的路径
mkdir   建立目录
rmdir   删除目录
rm      删除目录和文件 -r递归    -f强制
tree    显示目录树 -L 指定层数,-d 指定目录 如:tree -L 2 -d /
文件操作
1) touch    新建或修改时间
2) rm -rf   删除
    -r      递归,删除目录
    -f      强制删除
3) cat      查看内容,所有
    -n      列出行号
4) more     分屏显示
    空格向下翻页,b向上翻页,q退出
5) less     分行显示
6) head []  显示文件头   默认显示前10行
        -n 20 文件名   显示前20行
7) tail -n  行数 文件名  显示文件尾   默认显示前10行
        -f  监听文件尾
文件目录命令
rm                          删除文件或目录
cp [] 源文件 目标位置        复制 
    -r                      复制目录 
    -p              带属性复制
    -d              链接复制
    -a相当于-rpd
mv              剪贴或改名
shell           命令解释器
    内部命令:shell自带,没有明确的可执行文件
    外部命令:type查看,后期开发,有执行文件
链接文件(难点)
创建链接时一定要使用绝对路径
ln  (link)
ln -s 实际文件  软连接文件
ln -s /root/12  /tmp/   (软链接)
ln  /root/12  /tmp/     (硬链接)

注意:删除软连接 rm -rf abc/ 有“/”会把源文件删除,所以rm -rf abc 则删除软连接文件 abc

硬链接:
    源文件和硬链接文件拥有相同的inode号和blook块,可以看成是同一个文件。
    修改任意一个文件,另一个内容改变,删除任意一个,另一个正常使用。
    除非两个都删除,才不能访问。
    不能夸分区(防止inode号重复)
    不能链接目录。(目录下文件可能太多)
    特征不够明显,很难判断两个是硬链接,不推荐使用。
软链接:
    软链接有自己独立的inode和blook,但blook不记录实际数据,只写入源文件名和inode号
    软链接大小不随源文件大小改变而改变
    软连接是最大权限,但访问受源文件权限限制
    修改任意一个,另一个也改变
    删除软链接,源文件无影响,删除源文件,软链接无效
    软链接可以夸分区,可以链接目录
    软链接特征特征明显,推荐使用。
常用快捷键
    Tab         自动补全
    ctrl+l      清屏
    ctrl+u      从光标删除到行首
    ctrl+k      从光标删除到行尾
    ctrl+y      在粘贴回来
    ctrl+a      光标移到行头
    ctrl+e      光标移到行尾
    ctrl+s      暂停屏幕
    ctrl+q      解除暂停屏幕
    ctrl+c      强制终止
    ctrl+z      放入后台

注:以“.”开头的文件,代表隐藏文件(系统文件,不要乱动)

    alias   查看系统别名(别名优先级高于命令)
    /root/.bashrc       环境变量设置文件
    ps aux              查看任务管理器
    kill                杀死进程
    操作时先看一下在那个目录,尽量使用绝对路径
    设置中文字体:LANG=zh_CN.UTF-8
权限
    -rw-r--r--.
    drwxr-xr-x.
    第1位表示文件类型
    其中      -   普通文件
            d   目录文件
            l   链接文件
            b   设备块文件
            c   字符设备文件
            s   套接字
            p   管道
    第2.3.4  位表示  u(所有者)rwx(读写执行)    权限
    第5.6.7  位表示  g(所属组)rwx(读写执行)    权限
    第8.9.10位表示  o(其他人)rwx(读写执行) 权限
        r 4     w 2     x 1
    最后一位点(.)代表文件受selinux保护
    chome(权限修改)
常用权限    644     标准文件权限
            755     文件:执行权限
                    目录:标准权限
            777     最大权限
用户在自己的所属组里,所有者权限生效;在其他所属组里,所属组权限生效。
chown   修改所有者
chgrn   修改所属组
    -R  参数  对目录及其内所有文件都设置权限(递归设置)
    chown   u:g 或chown  u.g     (同时修改所有者和所属组)
    chown   :g  修改所属组
权限的意义(只限制普通用户)
对文件:r:读取内容  cat more    head    tail
        w:编辑        vi  echo
        x:可执行
注:对上级目录有权限,才能操作文件数据(文件本身权限受上级目录的权限管理)
对目录:r:可以查询目录下文件名    ls
        w:修改目录结构    删除、新建、更名、复制、剪贴
        x:可以进入目录
最大权限:   文件x最大
                目录w最大
对于目录426权限没有意义,只能是057,0最小权限,5标准权限,7最大权限
新建的文件初始权限为666(umask为0000时)
新建的目录初始权限为777(umask为0000时)
umask   (系统通过umask保证默认权限)/etc/profile
    超级用户:0022
    普通用户:0022或0002
新建文件及目录的全选计算
UID > 199   umask 002  
UID <= 199  umask 022  

rwx  rwx  rwx       777     目录默认权限
---  -w-  -w-       022     umask
----------------------
rwx  r-x  r-x       755     实际权限

rw-  rw-  rw-       666     文件默认权限
---  -w-  -w-       022     umask
----------------------
rw-  r--  r--       644     实际权限


rwx  rwx  rwx       777     目录默认权限
---  -w-  rwx       027     umask
----------------------
rwx  r-x  ---       750     实际权限

rw-  rw-  rw-       666     文件默认权限
---  -w-  rwx       027     umask
----------------------
rw-  r--  ---       640     实际权限
帮助文件
--help          查看命令的常见选项
man         查看帮助文件
    man 5 passwd            查看passwd文件的帮助
    man 1 passwd            查看passwd命令的帮助
    man -f whatis           查看命令的帮助级别
        man帮助级别
            1 - 查看命令的帮助
            2 - 查看可被内核调用的函数的帮助
            3 - 查看函数和函数库的帮助
            4 - 查看特殊文件的帮助(主要是/dev目录下文件)
            5 - 查看配置文件帮助
            6 - 查看游戏帮助
            7 - 查看其他杂项帮助
            8 - 查看系统管理员可用命令帮助
            9 - 查看和内核相关文件的帮助
 info       最详细的帮助文件(u进上层,n下一节,p上一节,q退出)
基本查找命令
which           查找命令的命令,能看到相关别名
whereis         查找命令的命令,看到帮助文档的位置
locate          按照文件名在特定数据库查找
    updatedb    强制更新数据库     /var/lib/mlocate/mlocate.db     数据库文件
    vim /etc/updatedb.conf
        PRUNE_BIND_MOUNTS = "yes"       开启搜索限制
        PRUNEFS =                       不被搜索的文件系统
        PRUNENAMES =                    不被搜索的文件类型
        PRUNEPATHS =                    不被搜索的路径

find            搜索命令(在系统中搜索符合条件的文件名。使用通配符完全匹配)
    通配符 *   任意内容
            ?   任意一个内容
            []  中括号内任意一个内容,[abc][0-9][A-Z][A-Za-z]
            [^] 取反,除了[]内的内容
grep            查找字符串(在文件中搜索符合条件的字符串。正则表达式包含匹配)
    表达式 *   前一个字符重复任意多次
            ?   前一个字符重复0次或一次(需要egrep命令)
            []  中括号内任意一个内容
            ^   限制行首
            $   限制行尾

    /etc/profile(umask环境变量配置文件)
    /var/lib/mlocate/mlocate.db(locate命令搜索的后台数据库)
    /etc/updatedb.conf(定义locate命令的配置文件)
    最大权限有安全风险,要小心赋予。
    info(更详细的帮助文件)
find查找命令
find 位置 -name 文件名
        -mtime      修改时间(modify)
        -atime      按访问时间(access)
        -ctime      状态修改时间,即权限等(天)+4 查找4天前的,-4查找4天内的,4查找第四天当天
             find / -ctime -4 
        -uid        数字(按ID查找)
        -gid        数字(按组ID查找)
        -user       用户名(按属主用户名查找)
        -group      组名(按属组名查找文件)
        -nouser     查找没有属主的文件
        -name       按文件名查找
        -size       按大小,+50k:大于50k,-50k:小于50k,50k:等于50k
        -type       按文件类型查找,f:普通、d目录、i:链接
    find /etc/  -name rpm -type d   查找/etc下rpm目录
        -perm   444         按权限查找)
                +444    只要有一个大于4即可
                -444    全小于4即可
        -inum       节点数 (按i节点查找)
        -iname      (按文件名查找,不区分大小写)
    在查找的结果中直接以命令操作
        find /tmp/ -mtime   +10 -exec rm -rf {} \;(类似于管道符号)
                    -ok(使用时会询问用户是否)
逻辑连接符:   
        -a      (and 逻辑与)     
        -o      (or  逻辑或)
        例:find /etc -size +1k -a -size -10k  
        在etc目录下查找大于1k并且小于10k的文件
grep    -i "root" /etc/passwd   (按字符串root查找,i是忽略大小写)
    -i  (忽略大小写)
    -v  (反向选择,逻辑非的意思)
    -o  (统计关键词有多少行)
|管道符

    cat install.log | grep lib (在显示文件操作中,grep搜索含有lib的行)
    第一次的结果会因管道符以文本流形式做为参数传给命令2
    find /etc/ -name "passwd" |xargs ls -l (在/etc目录中查找passwd文件,并以长格式显示)
    第一次的结果会因管道符以任务流形式做为参数传给命令2
        |       只接收正确输出文本流  |&  接收正确和错误输出的文本流
        |xargs  只接收任务流
netstat     查看系统网络状态
        -t      查看tcp协议端口
        -u      查看udp
        -l      监听
        -n      以ip和端口号显示
压缩和解压缩
1) zip压缩
        zip -r test.zip /test   压缩(-r是压缩目录)
        unzip test.zip          解压缩
2) gz压缩,不会打包,不保留源文件
        gzip 源文件                压缩
        gzip -r 原目录             (只对目录内文件单独压缩)
        gzip -c 源文件 > 压缩包   保留源文件压缩
        gunzip压缩包               解压缩
        gzip -d 压缩包         解压缩
3) bz2 不能压缩目录
        bzip2   源文件     (压缩,-k保留源文件)
        bzip2   -d 压缩包  (解压,-k保留压缩包)
        bunzip2 压缩包     (解压,-k保留压缩包)
4) tar打包,不压缩
        tar -cvf  打包名 源文件       (打包)
        tar -xvf  文件包名          (解包,-c打包,-x解包,-v显示过程,-f指定打包文件名)
5) 同时压缩打包
    gz  tar -zcvf 压缩名 源文件       (压缩,-z,识别.gz格式)
        tar -zxvf 压缩包名              (解压)
    bz2 tar -jcvf压缩名 源文件        (压缩,-j,识别bz2格式)
        tar -jxvf 压缩包名          (解压)
6) 查看不解包    tar -ztvf   (gz格式,-t,只查看,不解压)
        tar -jtvf   (bz2格式)
7) 指定压缩位置
        tar -jxvf root.tar.bz2 -C /tmp/
8) 指定文件到指定位置解压
        tar -xzv -C /tmp -f a.tar.gz 文件名(写用t查看时显示的有路径路径文件名)
9) 压缩指定路径下的文件到当前目录
        tar -zcv -C /usr/local/src/ -f 123.tar.gz 123.txt
10) tar通用解压
        tar -xf[v] 文件名  (解压)-v显示过程
常用网络命令
    w           查询当前登录服务器的所有用户
        18:15:08 up 15 min,  1 user,  load average: 0.00, 0.04, 0.05
        USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
        root     pts/0    10.10.10.1       18:15    0.00s  0.00s  0.00s w
        开机时间    登录时间     登录用户数       平均负载 1分钟前 5分钟前 15分钟前
        用户名  登陆中端  来源ip   登陆持续时间  用户闲置时间  所有进程占用CPU时间 正在进行的操作
    who         查询登录用户
    last        列出登录系统相关信息
    lastlog     显示所有账户最后一次登录时间
    write       给在线用户写消息 (ctrl+d 保存发送 weith root tty1)
    wall        对所有在线用户说话
    mail        邮件  mail 收信,h 列出标题,q 退出
    ping        网络测试(-c指定次数,-s 指定大小 <-s 65536 死亡之ping>)
    ifconfig    查询本机ip
        ifconfig eth0 10.10.10.11 netmask 255.255.255.0 临时配IP
        eth0:0  第一块网卡的第一模拟网卡
    netstat     查看网络状态 -an -tuln 
    telnet ip端口 测试端口是否正常链接
        ctrl+]---> quit   退出
    netstat tlun    (查看本机所有监听端口)
        -t tcp -u udp -l 监听 -n 以ip和端口号显示

关机重启

关机
# sync      同步数据,强制把内存数据保存到硬盘
    1) shutdown -h  无特殊情况使用
    2) init 0       调用内核关机程序,不保存数据
    3) halt         同上
    4) poweroff     相当于直接断电
重启
    shutdown -r now
    reboot          会关闭服务
    init 6          相当于强制重启
netstat -an | grep ESTABLTSHED | wc-l
查看端口并查找ESTABLTSHED关键字,然后计数
注:没有所有者的文件(只有以下两种是正常的)
    1) 外来文件(优盘、光盘、硬盘、windows下的文件)
    2) 内核产生的文件(/proc  /sys)
/var/log/wtmp           系统登录信息
/var/run/utmp           系统登录信息
/var/spool/mail/root    邮件保存位置
不建议定时重启(风险大)
挂载
/etc/fstab  自动挂载配置文件,设置开机自动挂载
设备不可设置开机自动挂载
使用UUID对于系统来说其唯一性会更好
mount -a    测自动挂载文件(准确度不高,不建议使用)
设备文件名
光盘: redhat 5以前:/dev/hdc
        redhat 6以后:/dev/sr0
U盘:和硬盘一样,需查询,用  fdisk -l
光盘挂载:mount -t iso9600 /dev/sr0     /mnt/cdrom(-t是指定文件系统,可不写)
卸载:umount /dev/sr0  或   umount /mnt/cdrom
弹出光驱:eject
U盘挂载:   mount -t vfat /dev/sdb1    /mnt/usb(vfat=FAT32,fat=FAT16)
            mount -o iocharset=utf8 /dev/sdb1   /mnt/usb/(指定中文编码UTF-8挂载U盘)
    卸载: umount /dev/sbb1 或 umount /mnt/usb/
镜像文件挂载: mount -t iso9660 -o loop 镜像文件(*.iso)    挂载点
更改挂载类型: mount -o remount,exec   设备名/挂载点(remount针对已挂载的)
                mount -o remount,rw  /  重新将根挂载为读写
    mount   #查看所有已挂载的设备信息
    mount -t fs  设备名(绝对路径)  挂载点 (fs代表文件系统)
Linux不识别NTFS文件系统,只识别FAT32及以下
终端界面识别中文:   
    ①  安装中文编码和中文字体
    ② 终端要能识别中文
驱动
Linux驱动在内核里自动加载,无需手工安装,特殊的需要手工安装
1) 常用驱动直接放入内核,(必备硬件驱动)
2) 不太常用,绝大多数驱动,以模块方式放入硬盘 /lib/modules/2.6.32-642.el6.x86_64/kernel
3) 以模块方式保存在硬盘的驱动,系统认为不常用,默认不安装,若要安装需重新编译内核并加载(NTFS则如此)
4) Linux彻底不识别的驱动需要手工安装,(需要厂商提供硬件驱动)
    注:
        当前系统字体库     echo $LANG
        修改当前系统字体库   LANG=zh_CN.UTF-8    中文
                        LANG=en_US          英文

ls -l 样式改变

在Linux中使用ll或者ls -l命令过程中,日期的显示总是显示英文日期,觉的很不爽,那么怎么设置显示的格式是按照我们定义的呢?

1、临时更改显示样式,当回话结束后恢复原来的样式
export TIME_STYLE='+%Y-%m-%d %H:%M:%S'    # 直接在命令中执行即可
2、永久改变显示样式,更改后的效果会保存下来
    修改/etc/profile文件,在文件内容末尾加入
    export TIME_STYLE='+%Y-%m-%d %H:%M:%S'
    执行如下命令,使你修改后的/etc/profile文件配置内容生效
source /etc/profile
3、使用ls -l --time-style=full选项
4、查看测试
[root@localhost opt]# ll
-rw-r--r-- 1 root root 204018162 2019-05-21 09:26:16 mongodb-3.2.3.tgz
-rw-r--r-- 1 root root 194869554 2019-05-21 09:26:17 zookeeper-3.4.8.tgz

转载于:https://www.cnblogs.com/outsrkem/p/11168810.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值