澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

澳门新萄京官方网站入门操作,Linux基础命令知识

2019-11-24 作者:澳门新萄京官方网站   |   浏览(140)

澳门新萄京官方网站 1

一、用户登录

centos 目录结构 快捷键 ls命令,alias别名,so:动态库 a:静态库,环境变量PATH,Ctrl z 暂停命令,Ctrl a 光标到行首,Ctrl e 光标到行尾,Ctrl u 删除光标前所有字符 Ctrl r 搜索命 hash命令  Ctrl 左箭头/右箭头 cd命令  第三节课

帮助命令
    man  eg: man ls
    help eg: help cd
    info eg: info ls
    --help  eg: ls --help
查看环境变量的命令
    export,printenv,env,set
查看时间的命令
    date,hwclock,cal
    date :显示或者设置系统的时钟
      -s 设置时间
      -d 显示字符串所指的时间或日期
      显示时间
                # date -d "$date"
                # date " %y" 显示年
                # date ' %y-%m-%d-%k-%M-%S' 显示年月日时分秒
                # date " %y" 显示年
                # date ' %y-%m-%d-%k-%M-%S' 显示年月日时分秒
      设置时间 # date -s 2013-07-14
                # date -s 19:22:22
                # date -s "2013-07-14 19:22:22"
    hwclock : 显示硬件时钟
                # hwclock
              设置硬件时间
                # hwclock --set --date="13/07/14 12:05:22"
    cal: 显示公里日历(阳历日历)
              # cal
which 查找文件
      # which COMMAND
type  显示命令的类型(内部命令/外部命令)
      # type COMMAND
file  显示文件类型
      # file filename
echo  显示字符串
      # echo $PATH
hash  用来显示,添加,清除哈希表
      简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数 。   
      # hash -l 显示为
      builtin(内部命令) hash -p /usr/bin/file file
      builtin hash -p /bin/chmod chmod
      builtin hash -p /bin/date date
      builtin hash -p /usr/bin/stat stat
      builtin hash -p /usr/bin/man man
      builtin hash -p /usr/bin/info info
      builtin hash -p /bin/ls ls
      builtin hash -p /usr/bin/clear clear
目录命令
      cd
        cd ~ 回家目录
        cd  回家目录
        cd - dirname 进入指定目录
        cd - 在上一个目录和当前目录来回切换
      dirname  指定路径目录
      mkdir  创建目录
      rmdir  删除目录
      pwd  显示当前目录
文本文件相关命令
  查看
      cat,tac
          # cat /etc/passwd 用户的属性信息
          # cat /etc/shadow 影子口令  把密码放到另外一个文件中去  只能让管理员访问
          # cat /etc/group 组的属性信息
          # cat /etc/gshadow 组的密码
      more/less
          more  向后翻  在翻至文件尾部之前允许向前翻
          less  向前翻
      head/tail
          head 文件前n(默认前10)行
          tail ~    后      后
            -n #  -n 20
            -#    -20
  创建
      nano
          ctrl o  保存
          ctrl x  退出
      touch
          修改文件时间戳
          access 访问时间  -a
          modify 修改时间  -m
          -t  指定时间格式  [cc]yymmddhhmm.ss
      stat file
          显示文件的属性信息
          访问时间
          修改
          改变
    编辑
        nano
        vim
    复制
      cp  src(源)  。。。DEST(目标目录)
            -r  递归复制
            -a 比-r全面,归档
            -v 过程
            -i  交互式复制
    移动
      mv
    删除
      rm
        -r 逐级删除
        -i 提醒
        -f 强行删除
命令别名
    alias  command=command
    # alias  cls=clear
通配符
    bash支持文件通配,globbing
    * 任意长度的任意字符
    ?任意单个字符
    []  指定范围内的任意单个字符[a-z]
    [^] 脱字符,取反,指定范围外的单个字符[^0-9]
添加用户
    useradd,adduser
      # useradd USERNAME  创建用户时为其创建同名组,家目录,用户的私有组
          -u UID,有效范围0-65535
          -g GID,有效范围已有的GID
          -c 注释
          -d /path/to/somewhere
          -s /path/to/shell_command 切换到shell的命令上
          -r 创建系统用户,ID号1-499之间的用户(系统用户的家目录虽然有路径,却并没有真正给他创建目录)
          -M 不为用户创建家目录
          -m 必须为用户创建家目录
转换用户
    su(switch user)
        su USERNAME
        su -l USERNAME=su - USERNAME

 澳门新萄京官方网站 2

root 用户一个特殊的管理帐户也被称为超级用户。

Centos7中root的id是0

[root@centos7 ~]#echo $UID
0
[root@centos7 ~]#id -u
0

 

查看用户的id
    id USERNAME
    -u
    -g
    -n(名字)
    -un
    -gn

 澳门新萄京官方网站 3

普通(非特权 )用户

Centos7普通用户的id是1000

上半节课

创建组: 
    groupadd USERNAME
      /etc/group
        组名:密码占位符,GID,以此组为额外组的用户列表,用户间用逗号分隔
        -g GID 创建组的时候为其制定GID
        -r  创建系统组
修改用户属性
      usermod
        -u
        -g  改基本组
        -G  额外组与-a一块使用  -a(append追加)保留原来的额外组,新增额外组
        -s shell
        -l 修改用户的登录名称
        -m -d /path/to/sommewhere 给用户修改新的家目录,并将原有家目录中的用户一并挪过去
groupmod  修改组属性
    -g GID
    -n NEW_NAME
密码管理
    passwd 修改自己的密码
        passwd
        -l 锁定用户帐号
        -u 解锁
密钥属性的修改
    passwd
      -e 设定过期期限
      -n 设定密码最短使用天数
      -x 设定最长使用天数
      -w 警告天数
      -i 非活动时长
    chage
      -d 修改密码的最近一次修改时间
      -m --mindays MIN_DAYS 最短使用期限
      -M --maxdays MAX_DAYS 最长使用期限
      -W --warndays WARN_DAYS 警告天数
      -I --inactive  非活动天数
      -E --expiredate 过期时间
    usermod
      -e  指定账户过期时间
      -i 跟上天数:表示非活动天数
gpasswd 为组设定密码
newgrp GROUP 临时设定指定的组为自己的基本组

澳门新萄京官方网站 4

二、终端terminal

ls命令

改变文件的权限
    chmod change mode
        chmod [选项]权限文件
            权限定义方式
                1.同事修改三类用户的权限;8进制数字方式
                2.修改某一些或某些类用户的权限:u,g,o
                    u=rw
                    u=,g=
                    ug=
                3.只操作某类用户的某位或者某些位权限:u,g,o,a
                  /-
                  u w
                  x
                  -x
                  g-rw(把属主的读写权限删除)
选项
          -R :递归修改权限
          --reference=/path/to/somefile FILE 
修改文件的属主和属组
    chown[选项] 用户  文件
    chgrp[选项] 组  文件
    选项
        -R :递归修改权限   
        --reference=/path/to/somefile FILE 
删除用户:
    userdel
        userdel [options] USERNAME
          -r
删除组
    groupdel
      groupdel GRPNAME
 bash的快捷键
      Ctrl a 跳至命令行首
      Ctrl e          尾
      Ctrl u 删除命令行首到光标所在地点内容
      Ctrl k 删除当前光标所有出至命令行的内容
      Ctrl l 清屏,相当于clear命令
      Ctrl c 取消或终止
      Ctrl z 将当前命令送至后台
cut:文本切割
    最常用的功能是能够使用制定的符号作为行中内容的分隔符,将每一行切片,而只取出某些片
      cut [options] FILE
          -d:默认分隔符为空白,一般在后边加:号,-d:
          -f 1-5(第一段-第五段)  1,5(第一段和第五段)
join: 将两个文件中,指定栏位内容相同的行连接起来
      参  数:
  -a<1或2>  除了显示原来的输出内容之外,还显示指令文件中没有相同栏位的行。
  -e<字符串>  若[文件1]与[文件2]中找不到指定的栏位,则在输出中填入选项中的字符串。
  -i或--igore-case  比较栏位内容时,忽略大小写的差异。
  -o<格式>  按照指定的格式来显示结果。
  -t<字符>  使用栏位的分隔字符。
  -v<1或2>  跟-a相同,但是只显示文件中没有相同栏位的行。
  -1<栏位>  连接[文件1]指定的栏位。
  -2<栏位>  连接[文件2]指定的栏位。
  --help  显示帮助。
  --version  显示版本信息。
  grep
    global serach regular exmpression and printing 以正则表达式来描述选择条件
        正则表达式是一类字符所书写的模式(pattern)
            元字符:(*、?)不表示字符本身的意义,而用于额外功能性的描述
        grep [options] 'pattern' file
        正则表达式:基本正则表达式,扩展正则表达式
        基本正则表达式:贪婪模式(尽可能长de去匹配符合模式的内容)
            ^: 锚定行首的符合条件的内容,用法格式:"^pattern"
            $:锚定行尾的符合条件的内容,用法格式:"pattern$"
                ^pattern$  自成一行
                ^$ 空白行
            .:匹配任意单个字符
            *:前边的字符距最近才能匹配
                a*b:ab,aab,b  匹配
                    acb  不匹配
              .*:匹配任意长度的任意字符
              []:匹配指定范围内的任意字符
              [^]:匹配指定范围外的任意字符
                  [0-9]: 所有的数字
                  [a-z]:所有的小写字母
                  [A-Z]:所有的大写字母
                  [a-zA-Z]:所有的字母
                  [0-9a-zA-Z]:所有的数字和字母
    grep的选项
        --color=auto
        -v:反向选取,只显示不符合模式的行
        -o:只显示被模式匹配到的字串,而不显示整个行
        -A #行号:显示匹配的行时,顺带显示后边的#行
        -B # :前面的#行
        -C # :前后的#

澳门新萄京官方网站 5

设备终端

键盘鼠标显示器

澳门新萄京官方网站 6

 

sort : 排序
  -f 忽略字符大小写
  -n 以数值大小进行排序
  -r 降序
  -u 移除重复的行,具有相同内容的行,只保留一个
  -R 随机排序
uniq :排序完成后不重复的行
  -c:统计每行重复的次数
  -u;只显示没有重复的行
  -d: 只显示重复过的行

 

物理终端(/dev/console )

控制台console
在Linux 系统中,计算机显示器通常被称为控制台终端 (Console)。它仿真了类型为Linux的一种终端(TERM=Linux),并且有一些设备特殊文件与之相关联:tty0、tty1、tty2 等。当你在控制台上登录时,使用的是tty1。使用Alt [F1—F6]组合键时,我们就可以切换到tty2、tty3等上面去。tty1–tty6等 称为虚拟终端,而tty0则是当前所使用虚拟终端的一个别名,系统所产生的信息会发送到该终端上(这时也叫控制台终端)

澳门新萄京官方网站 7

下半节课

Linux命令之cd 

澳门新萄京官方网站 8

虚拟终端(tty: teletypewriters, /dev/tty# #为[1-6])

tty 可有n个, Ctrl Alt F[1-6]

澳门新萄京官方网站 9

alias别名

Linux命令之cat 

澳门新萄京官方网站 10

图形终端(/dev/tty7 ) startx, xwindows

CentOS 6: Ctrl Alt F7
CentOS 7: 在哪个终端启动,即位于哪个虚拟终端

澳门新萄京官方网站 11

so:动态库 a:静态库

Linux命令之alias/unalias 

澳门新萄京官方网站 12

串行终端(/dev/ttyS# )

ttyS
串 行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行端口都看作是一个字符设备。有段时间这些串行端口设备通常被称为终端设备,因为 那时它的最大用途就是用来连接终端。例如, 在命令行提示符下键入:echo test > /dev/ttyS1会把单词”test”发送到连接在ttyS1(COM2)端口的设备上。可接串口来实验。

澳门新萄京官方网站 13

环境变量PATH

Linux命令解析:su root和su -root 

澳门新萄京官方网站 14

伪终端(pty: pseudo-tty , /dev/pts/# )

pty, SSH远程连接
伪终端(Pseudo Terminal)是成对的逻辑终端设备(即master和slave设备, 对master的操作会反映到slave上)。
例 如/dev/ptyp3和/dev/ttyp3(或者在设备文件系统中分别是/dev/pty/m3和 /dev/pty/s3)。它们与实际物理设备并不直接相关。如果一个程序把ptyp3(master设备)看作是一个串行端口设备,则它对该端口的读/ 写操作会反映在该逻辑终端设备对应的另一个ttyp3(slave设备)上面。而ttyp3则是另一个程序用于读写操作的逻辑设备。

澳门新萄京官方网站 15

查看当前的终端设备: #tty

Ctrl z 暂停命令

man eg: man ls help eg: help cd info eg: info ls --help eg: ls --help 查看环境变量的命令 export,printenv,env,set 查看时间的命令 date,hwclock,cal date...

命令

交互式接口

Ctrl a 光标到行首

1.tty (查看登录平台数量及用户)

交互式接口:启动终端后,在终端设备附加一个交互式应用程序

Ctrl e 光标到行尾

2.who (查看当前平台及用户) -r(同3)

GUI: Graphic User Interface

X protocol, window manager, desktop
Desktop:
GNOME (C, 图形库gtk),
KDE (C ,图形库qt)
XFCE (轻量级桌面)
带桌面的有图像的操作方式属于图形接口

澳门新萄京官方网站 16

Ctrl u 删除光标前所有字符

3.runlevel (查看当前运行级别)

CLI: Command Line Interface

shell程序: sh (bourn 史蒂夫·伯恩) csh tcsh
ksh (korn) bash (bourn again shell)GPL zsh
基于命令行界面的

澳门新萄京官方网站 17

hash命令

4.whoami (当前登录用户) *

三、什么是Shell

 

5.init3/5(切换字符/图形界面) 0/6(关机/重启“同16”) *

Shell 是Linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行

shell也被称为LINUX的命令解释器( command interpreter)
shell是一种高级程序设计语言
操作系统与外部最主要的接口就叫做shell。shell是操作系统最外面的一层。shell管理你与操作系统之间的交互:等待你输入,向操作系统解释你的输入,并且处理各种各样的操作系统的输出结果。
Shell提供了你与操作系统之间通讯的方式。这种通讯可以以交互方式(从键盘输入,并且可以立即得到响应),或者以shell script(非交互)方式执行。shell script是放在文件中的一串shell和操作系统命令,它们可以被重复使用。本质上,shell script是命令行命令简单的组合到一个文件里面。
Shell基本上是一个命令解释器,类似于DOS下的command.com。它接收用户命令(如ls等),然后调用相应的应用程序。较为通用的shell有标准的Bourne shell (sh)和C shell (csh)。

澳门新萄京官方网站 18

ls命令

6.lsblk (查看磁盘,块设备)

bash shell

GNU Bourne-Again Shell(bash)是GNU计划中重要的工
具软件之一,目前也是 Linux标准的shell,与sh兼容
CentOS默认使用
显示当前使用的shell
echo ${SHELL}
显示当前系统使用的所有shell
cat /etc/shells

目录或者文件最后更改时间

7.free (查看内存) -m/g(以MB/GB为单位) *

四、命令提示符

ls -a  --显示隐藏文件和目录,.开头的文件和目录
ls -ld  --只显示目录
ls -lt  --最新的显示在最上头,文件最近什么时候更新的
ls -lh  --显示文件的大小,但是不能显示目录下各文件之和大小,只能显示目录的大小
ls -li  --查看inode
ls -R   --递归显示当前目录和下级子目录的文件和目录内容
ls -lhS  --按文件大小排序

8.nano (修改文本)

命令提示符: prompt

[root@centos7 ~]#
root代表当前登录的用户,在Linux中管理员账户是root
centos7 当前计算机主机名
@ 分隔符
~ 当前所在家目录
· #超级用户提示符,普通用户的提示符是$

澳门新萄京官方网站 19

9.ifconfig (查看网络设备) ******* 1

显示提示符格式

[root@centos7 ~]#echo $PS1

 

10.ls (显示目标列表) *

修改提示符格式

PS1="[e[31m][u@h W]$[e[0m]"
e 33 u 当前用户
h 主机名简称 H 主机名
w 当前工作目录 W 当前工作目录基名
t 24小时时间格式 T 12小时时间格式
! 命令历史数 # 开机后命令历史数
颜色代码
背景色 字体色
40: 黑 30: 黑
41: 红 31: 红
42: 绿 32: 绿
43: 黄 33: 黄
44: 蓝 34: 蓝
45: 紫 35: 紫
46: 深绿 36: 深绿
47: 白色 37: 白色

alias别名

11.ll (显示当前目标详细文件) *

执行命令

输入命令后回车
提请shell程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分配资源将其运行起来

[root@steven ~]# alias aming='ls /tmp/'
[root@steven ~]# aming
1.txt  yum_save_tx-2015-03-18-13-02DUsJHx.yumtx

12.cat (查看文本文件) *

在shell中可执行的命令有两类

linux中的命令大致可分为两类,内部命令和外部命令

[root@steven ~]# ls /tmp/
1.txt  yum_save_tx-2015-03-18-13-02DUsJHx.yumtx
[root@steven ~]#

13.rz (批量上传文件到linux服务器“不能上传文件夹”) *

内部命令:由shell自带的,而且通过某命令形式提供,也称shell内嵌命令;

help 内部命令列表
enable cmd 启用内部命令
enable –n cmd 禁用内部命令
enable –n 查看所有禁用的内部命令

 

14.sz (批量上传文件到windows服务器) *

外部命令:存放在一个文件中,使用时需要去文件中查找,这些文件被定义在$PATH

[root@centos7 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
type命令可以查看命令类型,以区别是内部命令还是外部命令

[root@centos7 ~]# type cd
cd is a shell builtin
[root@centos7 ~]# type ls
ls is aliased to `ls --color=auto'
[root@centos7 ~]# type ifconfig
ifconfig is /usr/sbin/ifconfig

可以看到,cd为shell内嵌命令,ls命令为ls --color=auto的别名,ifconfig命令为外部命令在文件/usr/sbin/ifconfig中
执行外部命令

--查看当前有哪些alias

15.cp (复制一个或多个文件到目录目标) *

Hash缓存表

系统初始hash表为空,当外部命令执行时,默认会从
PATH路径下寻找该命令,找到后会将这条命令的路径记录到
hash表中,当再次使用该命令时, shell解释器首先会查看hash
表,存在将执行之,如果不存在,将会去PATH路径下寻找。利
用hash缓存表可大大提高命令的调用速率

要永久生效需要 添加在/etc/rc.d/rc.local

16.reboot(重启)

hash常见用法

hash 显示hash缓存
hash –l 显示hash缓存,可作为输入使用
hash –p path name 将命令全路径path起别名为name
hash –t name 打印缓存中name的路径
hash –d name 清除name缓存
hash –r 清除缓存

[root@steven ~]# alias
alias aming='ls /tmp/'
alias cman='man -M /usr/local/zhman/share/man/zh_CN'
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

17.pwd (显示当前用户工作目录绝对路径) *

命令别名

显示当前shell进程所有可用的命令别名
alias
定义别名NAME,其相当于执行命令VALUE
alias NAME='VALUE'
在命令行中定义的别名,仅对当前shell进程有效
如果想永久有效,要定义在配置文件中
仅对当前用户: ~/.bashrc
对所有用户有效: /etc/bashrc

--取消别名

18.echo(显示文字) ${A}123 (前提A=某个数) *

编辑配置给出的新配置不会立即生效

bash进程重新读取配置文件
source /path/to/config_file
. /path/to/config_file
撤消别名: unalias
unalias [-a] name [name ...]
-a 取消所有别名
如果别名同原命令同名,如果要执行原命令,可使用
“COMMAND”
’COMMAND’
/PATH/COMMAND:外部命令

unalias aming

19.enable (查看内部命令) -n XXX (查看禁用的XXX内部命令)

命令的概念

 

20.exit (退出当前用户)

命令的执行过程

系统第一次执行外部命令时Hash缓存表为空,系统会先从PTAH路径下寻找命令,找到后会将路径加入到Hasa缓存中,当再次执行此命令时会直接从Hash的路径下执行,如果存在直接执行,如果不存在将继续从PATH下的路径继续查找,Hash表可以提高命令的调用速率。

 

21.logout (注销当前用户)

命令的优先级

alias -------------------------------------别名
  builtin------------------------------内部命令
    hash-------------------------缓存表
      $PATH---------------可执行程序或脚本(外部命令)

命令执行优先级: 别名>内部命令>hash>外部命令

s:是超级权限的意思

22.rm -rf(删除文件或目录) *

命令的基本格式

COMMAND [OPTIONS...] [ARGUMENTS...]
选项:用于启用或关闭命令的某个或某些功能
短选项: -c 例如: -l, -h
长选项: --word 例如: --all, --human-readable
参数:命令的作用对象,比如文件名,用户名等
注意:
多个选项以及多参数和命令之间使用空白字符分隔
取消和结束命令执行: Ctrl c, Ctrl d
多个命令可以用;符号分开
一个命令可以用分成多行

sbin:super  binary

23.type (判断是内部命令还是外部命令)

格式一般是 命令 [选项] [参数]

[]表示可选
个别命令不遵循此格式,当有多个选项时,可以写在一起
简化选项:-a
完整选项:--all
-a = --all

查询目录中的内容:ls
ls [选项] [文件或目录]
选项:
-a:显示所有文件,包括隐藏文件
-l:显示详细信息
-d:查看某属性
-h:人性化显示文件大小
-i:显示inode (i节点,判断文件的所在位置)

ls 显示目录
ls -l 长格式显示(long)

 

24.hash (打开缓存表) -r XX (清除XX缓存记录) -r (清除所有缓存)-p /xx X ("/xx"命 令路径起别名为X)

五、简单命令

软链接

25.cd XXX (进入XXX目录) *

date 显示日期和时间

/etc/grub.conf -> /boot/grub/grub.conf

26.alias (查看别名) XX=“YY” (定义“YY”的别名)

Linux的两种时钟

系统时钟:由Linux内核通过CPU的工作频率进行的
硬件时钟:主板
hwclock, clock: 显示硬件时钟
-s, --hctosys 以硬件时钟为准,校正系统时钟
-w, --systohc 以系统时钟为准, 校正硬件时钟
时区: /etc/localtime
cal 显示日历
cal –y
nano 文本编辑

 

27.unalias YY(取消"YY"的别名) -a(取消所有的别名)

关机: halt, poweroff

 

28.date (查看系统时间) xxxxxx.Y (修改月日时分年Y秒)或 date -s '2020-1-5 12:30:50' (修改时间) *

重启: reboot

-f: 强制,不调用shutdown
-p: 切断电源
关机或重启: shutdown
shutdown [OPTION]... TIME [MESSAGE]
-r: reboot
-h: halt
-c: cancel
TIME:无指定,默认相当于 1
now: 立刻,相当于 0
m: 相对时间表示法,几分钟之后;例如 3
hh:mm: 绝对时间表示,指明具体时间


29.clock (主板时间) -s (覆盖系统时间) -w(覆盖主板时间)

用户登录信息查看命令:

whoami: 显示当前登录有效用户
who: 系统当前所有的登录会话
w: 系统当前所有的登录会话及所做的操作

目录

30.date %Y-%m-%d-%H-%M-%S(显示系统时间格式 年-月-日-时-分-秒) " %F %T"(%F显示年月日 %T显示时分秒) *

screen命令:

创建新screen会话
screen –S [SESSION]
加入screen会话
screen –x [SESSION]
退出并关闭screen会话
exit
剥离当前screen会话
Ctrl a,d
显示所有已经打开的screen会话
screen -ls
恢复某screen会话
screen -r [SESSION]

 

31.date -d@距离秒数 “ %Y-%M-%D-%s-%m-%s” *

echo命令

功能:显示字符
语法: echo [-neE][字符串]
说明: echo会将输入的字符串送往标准输出。输出的字
符串间以空白字符隔开, 并在最后加上换行号
选项:
-E (默认)不支持 解释功能
-n 不自动换行
-e 启用 字符的解释功能

so:动态库 a:静态库

32.reset (重置,复位)

显示变量

echo "$VAR_NAME“ 变量会替换,弱引用
echo '$VAR_NAME‘ 变量不会替换,强引用

查看动态库依赖,一般在/lib下

33.shutdown (关机) -r (重启“同16”) -h xx (xx分钟后关机)

启用命令选项-e, 若字符串中出现以下字符,则特

别加以处理,而不会将它当成一般文字输出
a 发出警告声
b 退格键
c 最后不加上换行符号
n 换行且光标移至行首
r 回车,即光标移至行首,但不换行
t 插入tab
插入字符
nnn 插入nnn(八进制)所代表的ASCII字符
echo -e '33[43;31;5mmagedu33[0m'
xHH插入HH(十六进制)所代表的ASCII字

ldd /bin/ls

34.ifconfig (显示或配置网络设备) *

 

35.screen -S XX(创建会话XX) -x XX(加入会话XX)

 

36.cal (查看日历) XXX 查看(查看XXX年日历) Y XXX (查看XXX年Y月日历)

 

37.touch (创建文件) *

/bin, /sbin, /usr/bin, /usr/sbin 放命令的目录,/sbin是超级用户root才可以用的命令
/boot Linux内核及引导系统程序所需要的文件目录
/dev 存放的是Linux的外部设备
/etc/ 配置文件目录
/home 用户家目录 命令:useradd
/lib ,/lib64 命令: ldd ,存放必备的共享库和内核模块,系统启动和运行根文件系统的各种命令时都要用到共享库,所以需要放在根文件系统下一起加载,如果是x86_64,这个目录部分功能会转到/lib64目录,但内核模块只会使用/lib目录,无论是否是64位系统,内核模块放在/lib/modules目录下
/usr/lib ,/usr/lib64:共享库文件和目标文件,如果是64位x86_64系统,这个目录功能转移到/usr/lib64目录下
/media, /mnt
/opt 是存放某些大型软件或者某些特殊软件的目录,现在很少有人安装在/opt目录,只有一些少数软件非得安装在/opt才会安装在/opt目录,例如:Oracle,一般配置文件放在/etc/opt下,可变更文件放在/var/opt下
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
/root root用户家目录
/selinux
/srv 存放一些服务启动之后需要提取的中间数据
/proc 系统内核映射 伪文件系统
/sys 伪文件系统
/sys/class 包含所有注册在kernel里面的设备类型,链接到device
/sys/dev 维护一个按照字符设备和块设备的主次号码列表,链接到device
/sys/device 是全局设备结构体系,包含所有被发现的注册在各种总线上的各种物理设备,是内核对系统中所有设备的分层次表达模型,也是/sys文件系统管理设备的最重要的目录结构
/sys/fs 描述系统中所有的文件系统
/sys/kernel 存放的是内核中所有可调整的参数
/tmp 临时文件
/usr user share readonly, 用户程序存放目录,类似win program files文件夹,安装完Linux后,/usr目录最大
/var 存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

38.history (查看当前历史记录) !XX(执行某条历史记录)-a (清空命令历史) -d XX (删除第XX条的命令) *

 

39.rpm -ivh (显示安装过程和套件相关信息) XXX(安装XXX目录后缀为RPM的文件) *

 

40.mount XXX YYYY(挂载XXX目录下的光盘到YYY目录下) *

 

41.df (查看已加载的光盘) *

cron任务计划会存放在/var/spool/cron下

42.which XXX (查看XXX命令路径) *

 

43.gedit (图形编辑工具)

cd  后面不加东西,就是进入到当前用户的家目录
cd ~  这里的~符号也表示用户的家目录
cd -  切换到上一次所在的目录
cd .  ..   其中.表示当前目录, ..表示上一级目录

44.useradd XXX (创建一个XXX的用户) *

 

45.su XXX (切换到XXX的用户) *

pwd / pwd -L

49.halt:关闭系统 -p(关闭系统并关闭电源) -d(关闭系统,但不留下纪录)

默认显示软链接目录,如果有软链接

50.hwclock

pwd -P

51.info:在info后面输入命令的名称就可以查看该命令的info帮助文档了:

显示真正的目录

53.mandb:linux自带的帮助文档mandb

L logical

53.makewhatis

P physical

55.poweroff:当需要系统关闭电源时,内核调用用户空间的/sbin/poweroff命令来完成。

 

56.screen:Screen是一个可以在多个进程之间多路复用一个物理终端的窗口管理器,这意味着你能够使用一个单一的终端窗口运行多终端的应用

 [root@steven ~]# ll /etc/sysconfig/
总用量 216
-rw-r--r--  1 root root  403 10月 18 2014 atd
-rw-r-----  1 root root  992 10月 15 2014 auditd
-rw-r--r--. 1 root root  398 1月  26 2015 authconfig
-rw-r--r--  1 root root  339 1月   5 2015 autofs
drwxr-xr-x. 2 root root 4096 3月  10 12:04 cbq
-rw-r--r--  1 root root  486 10月 18 2014 cgconfig
-rw-r--r--  1 root root  950 10月 18 2014 cgred.conf
-rw-r--r--. 1 root root   21 1月  26 2015 clock
drwxr-xr-x. 2 root root 4096 11月  4 2014 console
-rw-r--r--  1 root root 2651 8月  13 2013 cpuspeed
-rw-------  1 root root  110 11月 23 2013 crond
drwxr-xr-x. 2 root root 4096 2月   2 2015 daemons
-rw-r--r--. 1 root root   25 1月  26 2015 grub
-rw-r--r--  1 root root  529 8月  15 2014 htcacheclean
-rw-r--r--  1 root root  947 8月  15 2014 httpd
-rw-r--r--  1 root root   47 3月  12 17:04 i18n
-rw-r--r--  1 root root 1154 11月  4 2014 init
-rw-------. 1 root root  481 1月  26 2015 ip6tables
-rw-------  1 root root 1988 10月 15 2014 ip6tables-config
-rw-------. 1 root root  481 1月  26 2015 ip6tables.old
-rw-------. 1 root root  476 1月  26 2015 iptables
-rw-------  1 root root 1974 10月 15 2014 iptables-config
-rw-------. 1 root root  476 1月  26 2015 iptables.old
-rw-r--r--  1 root root  903 6月   2 2014 irqbalance
-rw-r--r--  1 root root 1212 10月 16 2014 kdump
-rw-r--r--  1 root root  180 3月  10 12:05 kernel
-rw-r--r--. 1 root root   63 1月  26 2015 keyboard
-rw-r--r--  1 root root  271 10月 15 2014 mcelogd
drwxr-xr-x. 2 root root 4096 11月  4 2014 modules
-rw-r--r--  1 root root  634 11月  4 2014 netconsole
-rw-r--r--  1 root root   43 3月   5 2015 network
drwxr-xr-x. 4 root root 4096 11月  4 2014 networking
drwxr-xr-x. 2 root root 4096 4月  24 14:09 network-scripts
-rw-r--r--  1 root root 2222 10月 16 2014 nfs
-rw-r--r--  1 root root   85 12月 20 2014 ntpd
-rw-r--r--  1 root root  167 12月 20 2014 ntpdate
-rw-r--r--  1 root root 1459 7月  19 2013 prelink
-rw-r--r--  1 root root  178 3月   5 2014 quota_nld
-rw-r--r--  1 root root 2585 11月 12 2014 raid-check
-rw-r--r--  1 root root  549 11月 23 2013 readahead
-rw-r--r--  1 root root  659 11月  4 2014 readonly-root
-rw-r-----. 1 root root   41 12月 18 2011 rngd
-rw-r--r--  1 root root  200 12月 10 2014 rsyslog
-rw-r--r--  1 root root  111 2月  23 2015 samba
-rw-r--r--  1 root root  136 10月 18 2014 sandbox
-rw-r--r--  1 root root  553 11月 18 2014 saslauthd
lrwxrwxrwx. 1 root root   17 1月  26 2015 selinux -> ../selinux/config
-rw-r--r--. 1 root root  125 2月  22 2013 smartmontools
-rw-r-----. 1 root root  438 11月 13 2014 sshd
-rw-r--r--. 1 root root  473 10月 16 2014 sysstat
-rw-r--r--. 1 root root 6253 10月 16 2014 sysstat.ioconf
-rw-------. 1 root root   73 1月  26 2015 system-config-firewall
-rw-------. 1 root root   71 1月  26 2015 system-config-firewall.old
-rw-r--r--  1 root root  183 10月 16 2014 udev

57.shutdown:关机

 

58.tree:执行tree指令,它会列出指定目录下的所有文件,包括子目录里的文件。

 

60.whatis

环境变量PATH的用法
echo $PATH 可以查看系统的环境变量PATH的值,使用which命令可以查看某个命令所在的绝对路径
PATH=$PATH:/tmp  这样我们可以使用/tmp/下面的可执行文件作为命令
让PATH永久生效的,需要把它加入到/etc/profile 里,重启生效,或者直接运行命令: 
source  /etc/profile

61.whoami:显示登录名whoami 命令在有 root 用户权限时也有效,因为它不检查 /etc/utmp 文件。显示计算名和用户

 

62.who am i

alias设置命令的别名,例如 alias aming='ls -lt'  
解除别名使用 unalias  aming 
让别名永久生效,需要把设置别名的命令,加入到 ~/.bashrc 里

63.w:打印当前系统活动摘要。

 

64.wc:计算器

root用户的配置文件:~/.bashrc

 

  1. 快捷键

 

tab:补全命令和路径
Ctrl c 取消命令
Ctrl z 暂停命令
Ctrl a 光标到行首
Ctrl e 光标到行尾
Ctrl u 删除光标前所有字符
Ctrl k 删除光标后所有字符
Ctrl l 清屏
Ctrl d 退出登录/shell == exit,结束输入, 比如wc命令和sort命令如果不加文件名会等待标准输入Ctrl d可以结束输入
Ctrl s 锁住命令终端,按任何键都不会有反应
Ctrl q 解锁命令终端
Ctrl r 搜索命令 比如ctrl r ls 再输入一次 ctrl r 会从最后一次ls或命令中包含ls的命令列出来
Ctrl 左箭头/右箭头 以单词为单位进行移动

bytes


bits

 

8bits = 1 Bytes

扩展阅读

 

# du -sh --max-depth=1   /   #--max-depth=1  ,根分区
0 /misc
244K /dev
4.0K /media
48M /boot
225M /var
2.2G /usr
4.0K /aming
4.0K /srv
4.3G /root
4.0K /selinux
28M /lib64
4.0K /testsdb1
7.8M /bin
4.0K /mnt
4.0K /cgroup
37M /etc
255M /lib
52K /tmp
4.0K /.ssh
4.0K /testsdb3
16K /lost found
73M /data
0 /net
du: 无法访问"/proc/2818/task/2818/fd/4": 没有那个文件或目录
du: 无法访问"/proc/2818/task/2818/fdinfo/4": 没有那个文件或目录
du: 无法访问"/proc/2818/fd/4": 没有那个文件或目录
du: 无法访问"/proc/2818/fdinfo/4": 没有那个文件或目录
0 /proc
4.0K /download1
8.0K /123
0 /sys
787M /download
8.0K /opt
284K /home
15M /sbin
7.9G /

100M

大目录
4.3G /root
2.2G /usr
7.9G /

B 1024Bytes=1KB

 

KB 1024KB=1M


MB 1024MB=1GB

 

GB 1024GB=1TB

ls /var  马哥  Linux就这个范儿

TB 1024TB=1PB

通常情况下,应用程序不得在/var顶层添加任何目录,这个位置只留给那些影响到整个系统的软件,而且还需经过Linux社区商量决定是否添加(比如nginx的访问日志最好在/var下创建一个nginx目录,例如/var/log/nginx/error.log)

PB 1024PB=1EB

/var下的目录
account :系统审计程序psacct的专有目录,psacct程序可以监控所有用户执行的命令。
lock :两个人同时编辑一个文件,用于硬件设备和其他被多个程序所共享的资源,例如串行设备锁文件,锁文件命名方式必须是LCK..后接设备和本名,例如进程是1230的锁文件,它的锁文件内容将包含11个字符:空格 空格 空格 空格 空格 空格 空格 1、2、3、0和换行符
run :守护进程的pid文件一般放这里,系统启动进程开始的时候会清空这个目录,一般程序在/var/run目录下有一个子目录(/var/run/nginx/nginx.pid),鼓励程序使用不止一个运行时文件,pid文件命名规则是<程序名>.pid
必须以ascii码数字字符描述进程标识符
cache:应用程序缓存数据,应用程序必须能再生或恢复这些数据,和/var/spool不同,删除缓存文件不会造成数据丢失错误
lib :进程信息,应用程序状态信息,应用程序运行期间保存程序所处的状态,/var/lib/misc给不需要单独子目录的程序
log :进程日志一般放这里,各种日志文件,lastlog、message、wtmp
spool :spool有mail目录和cron目录,redhat是放用户的邮件 cron放定时任务文件,供以后用的(可以被程序、用户、管理员处理),一旦被处理完毕都会被删除。
mail :非redhat是放用户的邮件
opt:/opt下软件包的可变数据都应该安装到/var/opt子目录中去,子目录名应该和/opt下子目录名称一样
tmp:/var/tmp目录使得程序要求在系统重启期间保护临时文件或目录成为可能,因此保存在/var/tmp目录中的数据,比/tmp中的数据得到更多保护。/var/tmp目录中数据在系统启动时不得删除

 

 

把十进制转化为二进制

 

bc

两个伪文件系统
/proc 内核信息
/sys 内核信息 硬件设备相关的
/misc 存放杂项文件,乱七八糟的文件,默认一般是空的

obase=2

nginx编译安装

192

cd /software/nginx-1.4.6 && ./configure --sbin-path=/usr/sbin/nginx 
--conf-path=/etc/nginx/nginx.conf --pid-path=/var/run/nginx/nginx.pid 
--error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log 
--user=nginx --group=nginx --with-pcre --with-http_gzip_static_module --with-http_ssl_module 
--with-http_realip_module --with-http_geoip_module --with-http_stub_status_module 
--add-module=/usr/local/nginx_upstream_check_module-master 
--add-module=/usr/local/ngx_cache_purge-2.1 --with-http_gunzip_module 
--add-module=/usr/local/ngx_req_status-master && make -j2 && make install

11000000

 

二进制转化为十进制


bc

hash命令

ibase=2

bash shell特有功能,记住你执行过的命令,在hash表里找

1010101

# hash
hits command
1 /usr/bin/tail
1 /usr/bin/file
3 /usr/bin/du
1 /bin/env
14 /bin/ls

85

mv  /usr/bin/wc  /bin
wc /etc/passwd
-bash: /bin/wc: 没有那个文件或目录

 

因为缓存了wc命令,bash shell在hash表找不到那个命令,这时候需要清空一下hash表

虚拟机当中释放鼠标 Ctrl ALT

hash -r 清空hash表

在安装环境中输入 ctrl alt f2

 

 

下次移动了系统里面的命令记得执行一下hash -r

centos5及之前

mv /usr/bin/wc /bin
hash -r

hda:ida

 

sda:scsi、sata、sas、usb

澳门新萄京官方网站入门操作,Linux基础命令知识。 

centos6及之后


sda:

bin目录

vda: 虚拟机

/bin 二进制 ,为所有用户使用,不得包含任何子目录
/sbin 二进制 ,为管理员所用,存储的是那些系统启动,恢复,还原,修复过程中必备系统工具,也是对/bin内容的补充,那些已知在/usr挂接后才需要的程序一般放在/usr/sbin下,用户自行安装的程序应该放在/usr/local/sbin目录下
/usr 系统运行相关文件 Linux系统源码等 user share readonly
/usr/bin 所有用户使用 系统启动时或启动后的用户程序
/usr/sbin 系统软件 系统启动时或启动后的系统程序
/usr/local/bin 第三方软件 所有用户使用
/usr/local/sbin 第三方软件 系统软件

xvda: 虚拟机

redhat现在很少按照上面的目录来区分

一切皆文件

# echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

 

搜索顺序从左到右,局部大于全局/usr/local/sbin-》/usr/local/bin-》/usr/sbin-》/usr/bin-》/sbin-》/bin

XShell、SecureCrt、Putty

 

Shell : 是Linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。


它接收用户输入的命令并把它送入内核去执行

命令帮助

shell也被称为LINUX的命令解释器

内部命令:help command
外部命令:command --help
man command

Shell:人机交互的语言

 

GUI:Gnome、KDE、Windows、IOS、Android

man 一个命令

CLI:Dos、cmd、powershell、sh、

[]:可选内容
<>:必须给出内容
| :或者
[|] :多选一

 


cat:查看文件内容

cd命令

[root@centos6 ~]# cat /etc/shells 查看当前系统所安装的shell

cd ~steven 用户家目录
cd - 上一次目录
cd ../.. 上层再上层目录,不是根分区开头/的都是相对路径,相对于当前目录
cd ~当前用户家目录

[root@centos6 ~]# echo $SHELL 查看当前使用的何种shell

 

 


which :查看命令的路径

/usr/share目录

who am i 和 who 和whoami 的区别

Linux就这个范儿

澳门新萄京官方网站 20

存放着所有体系结构无关的数据文件,他的内容可以共享给运行在任何体系结构下的操作系统,但必须保证它们运行的是不同体系结构平台的相同操作系统。

 

必须安装在/usr/share目录下的内容
dict,doc,games,info,locale,nls,sgml,terminfo,tmac,xml,zoneinfo 时区配置信息
/bin/cp /usr/share/zoneinfo/Asia/Shanghai   /etc/localtime   #校对时区

enable :enable既可以查看内部命令,同时也可以判断是否为内部命领

/usr/share目录下必须具备的内容
man 目录
misc 目录

-n 查看所有已禁用的内部命令

手册页
/usr/share/man/专为联机帮助而准备,包含了/和/usr下大部分程序的帮助信息,从man1到man8
ll /usr/share/man/
drwxr-xr-x. 2 root root 36864 Jan 29 16:15 man1
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man1p
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man1x
drwxr-xr-x. 2 root root 4096 Jul 10 2015 man2
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man2x
drwxr-xr-x. 2 root root 49152 Jan 29 16:15 man3
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man3p
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man3x
drwxr-xr-x. 2 root root 4096 Jan 8 08:38 man4
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man4x
drwxr-xr-x. 2 root root 4096 Jan 19 21:11 man5
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man5x
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man6
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man6x
drwxr-xr-x. 2 root root 4096 Jan 3 23:44 man7
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man7x
drwxr-xr-x. 2 root root 20480 Jan 12 12:59 man8
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man8x
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man9
drwxr-xr-x. 2 root root 4096 Sep 23 2011 man9x

-a 查看所有的内部命令

 

enable command 启用指定的内部命令

/usr/share/misc目录存放那些不需要拥有自己目录的应用程序,将它们的体系结构无关数据放在这里
ascii码表
file命令的文件特征符号表

enable -n command 禁用指定的内部命令

澳门新萄京官方网站 21

配合 | wc -l 可查看数量

 

[root@linuxeye 澳门新萄京官方网站入门操作,Linux基础命令知识。~]# enable -a #查看内部命令

 

[root@linuxeye ~]# enable whiptail #非内部命令

f

-bash: enable: whiptail: not a shell builtin

[root@linuxeye ~]# enable pwd #是内部命令

 

命令提示符:

例如: PS1="[[e[32m]u[e[36m]@h_v6[e[31m][e[0m] W]$ "

[root@localhost ~]#

# 管理员 $ 普通用户

显示提示符格式1:[root@localhost ~]#echo $PS1

修改提示符格式2 PS1="[e[1;5;41;33m][u@h W]\$[e[0m]"

e 33 u 当前用户 h 主机名简称 H 主机名 w 当前工作目录 W 当前工目录基名 t 24小时时间格式 T 12小时时间格式 ! 命令历史数 # 开机 后命令历史行

每个用户都有默认shell设定;

查看当前shell种类:

~]# echo $SHELL

$SHELL:是环境变量

 

在shell中可执行的命令有两类

 

内部命令: 由shell自带的,而且通过某命令形式提供

help 内部命令列表

enable cmd 启用内部命令

enable –n cmd 禁用内部命令

enable –n 查看所有禁用的内部命令

外部命令: 在文件系统路径下有对应的可执行程序文件

查看路径:which -a |--skip-alias ; whereis

区别指定的命令是内部或外部命令 type COMMAND

命令执行的优先顺序 : alias > 内部 > 外部(hash > PATH)

 

hash缓存表

系统初始hash表为空,当外部命令执行时,默认会从PATH路径 ($PATH)下寻找该命令,找到后会将这条命令的路径记录到hash表中,当再次使用该命令时,shell解

释器首先会查看hash表,存在将执行之,如果不存在,将会去PATH路径下寻找。

利用hash缓存表可大大提高命令的调用速率

 

澳门新萄京官方网站 22

 

hash常见用法

hash 显示hash缓存

hash –l 显示hash缓存,可作为输入使用

hash –p path name 将命令全路径path起别名为name

hash –t name 打印缓存中name的路径

hash –d name 清除name缓存

hash –r 清除缓存

 

命令别名:nano .bashrc 定义别名 vim ~/.bashrc

alias grep='grep --clock=auto'

alias 显示当前shell进程所有可用的命令别名,在命令行中定义的别名,仅

对当前shell进程有效 ,如果想永久有效,要定义在配置文件中

仅对当前用户:~/.bashrc

对所有用户有效 :/etc/bashrc

alias copy=cp

alias copy='cp -p -r'

alias 查看别名

unalias 别名名字

unalias -a 取消所有别名

写入~/.bashrc

gedit ~/.bashrc

临时使某条命令不受别名影响

1.路径执行命令

如:/bin/ls

2.ls

3.'ls'

命令的格式 :command option arguments

options 选项 启用命令的某项功能,从而更改命令的功能

arguments 参数 改变命令作用的对象

短选项

-c

-ca = -c -a

长选项

--word

 

type :查看命令种类

如果是内嵌命令,直接显示为内嵌;

如果是外部命令,显示命令的绝对路径;

例如:

~]# type ls

~]# type cd

~]# type type

 

date : date (查看系统时间) xxxxxx.Y (修改月日时分年Y秒)或 date -s

.clock (主板时间) -s (覆盖系统时间) -w(覆盖主板时间)

日期相关的命令:date,hwclock(clock),cal

硬件时钟:由电池供电,硬件计时;

系统时钟:系统启动时,从硬件时钟读取并设定其时间;内核时钟;

ntp:net time protocol网络时间协议

[root@centos6 ~]# date " %Y年%m月%d日 %H时%M分%S秒 星期2"

2018年05月15日 15时59分43秒 星期2

[root@centos6 ~]# date " %F %T" 年月日时分秒

2018-05-15 16:00:07

[root@centos6 ~]# date %s

1526371345

[root@centos6 ~]# date 100112202019.20 月日时分[年][.秒]

Tue Oct 1 12:20:20 CST 2019

[root@centos6 ~]# date -s '2020-1-5 12:30:50'

Sun Jan 5 12:30:50 CST 2020

[root@instructor_v7(nanyibo) ~]# date -d '-2 days' %A 表示前天是星期几

 

FORMAT:格式说明

%F:日期,显示为数字,格式为:2016-03-02;

%D:显示英制格式,月日年,显示格式为:03/02/16;

%T:时间,显示为数字,格式为:15:52:16;

%Y:年份,只显示完整年份数字(4位数字)显为:2016

%y:显示年份的后两位,显示格式为:16;

%m:月份,只显示数字,显示格式为:03;

%d:日期,只显示数字,显示格式为:02;

%H:小时,只显示数字,显示格式为(00..23):15;

%k:小时,显示格式为(0..23);

%I:小时,格式为(01..12);

%l:小时,显示格式为(1..12);

%h:显示月份,显示格式为:3月;

%M:分钟,只显示数字,显示格式为:52;

%S:秒钟,只显示数字,显示格式为:16;

%a:缩写星期;

%A:完整星期;

%b:缩写月份;

%B:完整月份;

%r:显示格式为(11:11:04 PM);

%R:同%H%M,格式为(23:37)

%s:从1970年1月1日至此刻所经历的秒数;timestamp; 显示格式为:1456905397;

 

设定日期时间格式:[月月日日时时分分[[年年]年年][.秒秒]];

hwclock命令:硬件时钟

-s, --hctosys:以硬件时间为准;设定系统时间;

-w, --systohc:以系统时间为准;设定硬件时间;

 

澳门新萄京官方网站 23

 

 

 

cal:显示日历;

cal [month] [year] clock/hwclock

command 查看硬时间

-s 硬时间写入软时间

-w 软时间写入硬时间

init :init 0 关机

:init 6 重启

poweroff

shutdown :shutdown (关机) -r (重启) -h xx (xx分钟后关机)

shutdown -h 0

xx 几分钟后关机

20:00

TIME:无指定,默认相当于 1

now: 立刻,相当于 0

m: 相对时间表示法,几分钟之后;例如 3

hh:mm: 绝对时间表示,指明具体时间

 

 

screen命令:

创建新screen会话

screen –S [SESSION]

加入screen会话

screen –x [SESSION]

退出并关闭screen会话

exit

剥离当前screen会话

Ctrl a,d

显示所有已经打开的screen会话

screen -ls

恢复某screen会话

screen -r [SESSION]

 

安装screen

centos6:

在虚拟机上操作,加载好光盘centos6-dvd1

[root@centos6 ~]# cd /media/CentOS_6.9_Final/Packages/

[root@centos6 Packages]# rpm -ivh screen-4.0.3-19.el6.x86_64.rpm

centos7:

在虚拟机上操作,加载好光盘centos7-everything

[root@centos7 ~]# mount /dev/cdrom /media/

mount: /dev/sr0 is write-protected, mounting read-only

澳门新萄京官方网站, 

[root@centos7 ~]# rpm -ivh /media/Packages/screen-4.1.0-0.25.20120314git3c2946.el7.x86_64.rpm

 

screen -S sessionname 创建screen

screen -x sessionname 加入screen

screen -ls 查看screen

 

echo命令

功能:显示字符

语法:echo [-neE][字符串]

说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开,

并在最后加上换行号

选项:

-E (默认)不支持 解释功能

-n 不自动换行

-e 启用 字符的解释功能

显示变量:

echo "$VAR_NAME“ 变量会替换,弱引用 “” 双引号

echo '$VAR_NAME‘ 变量不会替换,强引用 `` 反向单引号

[root@centos6 ~]# echo -e "a" 报警

[root@centos6 ~]# echo -e "aaan123naaaaa"

aaa

123

aaaaa

启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当

成一般文字输出

a 发出警告声

b 退格键

c 最后不加上换行符号

n 换行且光标移至行首

r 回车,即光标移至行首,但不换行

t 插入tab

\ 插入字符

nnn 插入nnn(八进制)所代表的ASCII字符

echo -e '33[43;31;5mmagedu33[0m'

xHH插入HH(十六进制)所代表的ASCII字

 

命令行扩展、被括起来的集合

命令行扩展:$( ) 或 ``

把一个命令的输出打印给另一个命令的参数

echo "This system's name is $(hostname) "

This system's name is server1.example.com

echo "i am `whoami` "

i am root

括号扩展:{ }

打印重复字符串的简化形式

echo file{1,3,5}

file1 file3 file5

rm -f file{1,3,5}

echo {1..10}

echo {a..z}

echo {000..20..2}

 

tab键:补全

 

$的用法

$varname 引用变量的值

如:[root@centos7 ~]# echo $SHELL当前shell类型

/bin/bash

$()或`` 命令行扩展:表示引用命令执行的结果

$[]或$(())

如:[root@centos6 ~]# echo $[2 3]

5

${}或"$varname"

强调变量名的起止范围

 

!$的用法 :上一条命令的最后一个参数

[root@centos7 ~]# cat /etc/fstab

[root@centos7 ~]# vim !$=vim /etc/fstab

 

{}

[root@centos6 ~]# echo {-3..9}

-3 -2 -1 0 1 2 3 4 5 6 7 8 9

[root@centos6 ~]# echo {a..z}

a b c d e f g h i j k l m n o p q r s t u v w x y z

[root@centos6 ~]# echo {A..Z}

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

[root@centos6 ~]# echo {A..z}

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z

[root@centos6 ~]# echo {3..10..3}

3 6 9

 

history ; 查看当前的历史记录

!XX 执行某条历史记录

!!重复执行上一条历史

-c: 清空命令历史

-d offset: 删除历史中指定的第offset个命令

n: 显示最近的n条历史

-a: 追加本次会话新执行的命令历史列表至历史文件

-r: 读历史文件附加到历史列表

-w: 保存历史列表到指定的历史文件

-n: 读历史文件中未读过的行到历史列表

-p: 展开历史参数成多行,但不存在历史列表中

-s: 展开历史参数成一行,附加在历史列表

 

命令历史相关环境变量

HISTSIZE:命令历史记录的条数

HISTFILE:指定历史文件,默认为~/.bash_history

HISTFILESIZE:命令历史文件记录历史的条数

HISTTIMEFORMAT=“%F %T “ 显示时间

HISTIGNORE=“str1:str2*:… “ 忽略str1命令,str2开头的历史

控制命令历史的记录方式:

环境变量:HISTCONTROL

ignoredups 默认,忽略重复的命令,连续且相同为“重复”

ignorespace 忽略所有以空白开头的命令

ignoreboth 相当于ignoredups, ignorespace的组合

erasedups 删除重复命令

export 变量名="值“

存放在 /etc/profile 或 ~/.bash_profil

export 设置或显示环境变量。(比如我们要用一个命令,但这个命令的执行文件不在当前目录,这样我们每次用的时候必须指定执行文件的目录,麻烦,在代码中先执行export,这个相 当于告诉程序,执行某某东西时,需要的文件或什么东东在这些目录里)

 

bash 的快捷键

Ctrl l 清屏,相当于clear命令

Ctrl o 执行当前命令,并重新显示本命令

Ctrl s 阻止屏幕输出,锁定

Ctrl q 允许屏幕输出

Ctrl c 终止命令

Ctrl z 挂起命令

Ctrl a 光标移到命令行首,相当于Home

Ctrl e 光标移到命令行尾,相当于End

Ctrl f 光标向右移动一个字符

Ctrl b 光标向左移动一个字符

Alt f 光标向右移动一个单词尾

Alt b 光标向左移动一个单词首

Ctrl xx 光标在命令行首和光标之间移动

Ctrl u 从光标处删除至命令行首

Ctrl k 从光标处删除至命令行尾

Alt r 删除当前整行

Ctrl w 从光标处向左删除至单词首

Alt d 从光标处向右删除至单词尾

Ctrl d 删除光标处的一个字符

Ctrl h 删除光标前的一个字符

Ctrl y 将删除的字符粘贴至光标后

Alt c 从光标处开始向右更改为首字母大写的单词

Alt u 从光标处开始,将右边一个单词更改为大写

Alt l 从光标处开始,将右边一个单词更改为小写

Ctrl t 交换光标处和之前的字符位置

Alt t 交换光标处和之前的单词位置

Alt N 提示输入指定字符后,重复显示该字符N次

注意:Alt组合快捷键经常和其它软件冲突

 

 

获取帮助

whatis

基于数据库的查找命令

优点:查找速度快

缺点:不具有实时性

centos6:

数据库存放位置:/var/cache/man/whatis

更新数据库:makewhatis

centos7:

数据库存放位置:/var/cache/man/index.db

更新数据库:mandb

 

man

1 User Commands

 

2 System Calls

 

3 C Library Functions

 

4 Devices and Special Files

 

5 File Formats and Conventions

 

6 Games et. Al.

 

7 Miscellanea

 

8 System Administration tools and Daemons

man命令的配置文件:/etc/man.config | man_db.conf

中文man需安装包man-pages-zh-CN

man命令的操作方法:使用less命令实现

space, ^v, ^f, ^F: 向文件尾翻屏

b, ^b: 向文件首部翻屏

d, ^d: 向文件尾部翻半屏

u, ^u: 向文件首部翻半屏

RETURN, ^N, e, ^E or j or ^J: 向文件尾部翻一行 y or ^Y or ^P or k

or ^K:向文件首部翻一行

q: 退出

#:跳转至第#行

1G: 回到文件首部

G:翻至文件尾部

f:向下翻一屏

b:向上翻一屏

d:向下翻半屏

u:向上翻半屏

j:向下翻一行

k:向上翻一行

g:跳至首页

G:跳至尾页

 

info

man常用于命令参考 ,GNU工具info适合通用文档参考

没有参数,列出所有的页面

info 页面的结构就像一个网站

每一页分为“节点”

链接节点之前 *

info [ 命令 ]

方向键,PgUp,PgDn 导航

Tab键 移动到下一个链接

d 显示主题目录

Home 显示主题首部

Enter进入 选定链接

n/p/u/l 进入下/前/上一层/最后一个链接

s 文字 文本搜索

q 退出 info

 

 

文件有两类数据:

元数据:metadata

数据:data

文件名最长255个字节

 

文件系统结构

/boot:引导文件存放目录,内核文件(vmlinuz)、引导加载器(bootloader,

grub)都存放于此目录

/bin:供所有用户使用的基本命令;不能关联至独立分区,OS启动即会用到的

程序

/sbin:管理类的基本命令;不能关联至独立分区,OS启动即会用到的程序

/lib:启动时程序依赖的基本共享库文件以及内核模块文件(/lib/modules)

/lib64:专用于x86_64系统上的辅助共享库文件存放位置

/etc:配置文件目录

/home/USERNAME:普通用户家目录

/root:管理员的家目录

/media:便携式移动设备挂载点

/mnt:临时文件系统挂载点

/dev:设备文件及特殊文件存储位置

b: block device,随机访问

c: character device,线性访问

/opt:第三方应用程序的安装位置

/srv:系统上运行的服务用到的数据

/tmp:临时文件存储位置

/usr: universal shared, read-only data

bin: 保证系统拥有完整功能而提供的应用程序

sbin:

lib:32位使用

lib64:只存在64位系统

include: C程序的头文件(header files)

share:结构化独立的数据,例如doc, man等

local:第三方应用程序的安装位置

bin, sbin, lib, lib64, etc, share

/var: variable data files

cache: 应用程序缓存数据目录

lib: 应用程序状态信息数据

local:专用于为/usr/local下的应用程序存储可变数据;

lock: 锁文件

log: 日志目录及文件

opt: 专用于为/opt下的应用程序存储可变数据;

run: 运行中的进程相关数据,通常用于存储进程pid文件

spool: 应用程序数据池

tmp: 保存系统两次重启之间产生的临时数据

/proc: 用于输出内核与进程信息相关的虚拟文件系统

/sys:用于输出当前系统上硬件设备相关信息虚拟文件系统

/selinux: security enhanced Linux,selinux相关的安全策略等信息的存储位置

 

二进制程序:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin

库文件:/lib, /lib64, /usr/lib, /usr/lib64, /usr/local/lib, /usr/local/lib64

配置文件:/etc, /etc/DIRECTORY, /usr/local/etc

帮助文件:/usr/share/man, /usr/share/doc, /usr/local/share/man,

/usr/local/share/doc

 

Linux下的文件类型

-:普通文件

d: 目录文件

b: 块设备

c: 字符设备

l: 符号链接文件

p: 管道文件pipe

s: 套接字文件socket

nc -Ul mage.sock

nc -U mage.sock

 

centos7 目录变化

/bin 和 /usr/bin

/sbin 和 /usr/sbin

/lib 和/usr/lib

/lib64 和 /usr/lib64

 

pwd :

显示当前所在shell的绝对路径

-P 如果当前所在位置是软链接目录,则显示源路径

 

绝对路径与相对路径

绝对:从根开始的路径

相对:相对于当前的路径

 

基名:basename

目录名:dirname

basenam /etc/rc.d/init.d/functions 基名路径

dirname /etc/rc.d/function 取目录名

 

例如下:

[root@instructor_v7(nanyibo) ~]# dirname '/etc/sysconfig/network-scripts/ifcfg-eth0'

/etc/sysconfig/network-scripts

[root@instructor_v7(nanyibo) ~]# basename '/etc/sysconfig/network-scripts/ifcfg-eth0'

ifcfg-eth0

 

 

cd:移动

cd 进入家目录

cd ~ 进入家目录

cd - 进入上一次的工作目录,反复执行会在两个目录间来回切换

 

ls :列出目录内容

列出当前目录的内容或指定目录

用法:ls [options] [files_or_dirs]

示例:

ls -a 显示所有文件,包含隐藏文件

ls -A 显示所有文件,包含隐藏文件,除了. and ..

ls -l 长列出,显示属性信息

例子:-rw-------. 1 root root 1495 May 15 11:23 anaconda-ks.cfg

ls -R 目录递归通过

ls -ld 目录和符号链接信息

ls -1 文件分行显示

ls –S 按从大到小排序

ls –t 按mtime排序

ls –u 配合-t选项,显示并按atime从新到旧排序

ls –U 按目录存放顺序显示

ls –X 按文件后缀排序

-/d/l/s/b/c/p 表示文件的类型

rw- --- --- 表示owner,group,other的权限

. 表示该文件有selinux的context标签,可用-Z 详细查看

 

 

查看文件状态:stat

文件:metadata, data

三个时间戳:

access time(atime): 访问时间,当文件被读取时才更新

modify time(mtime): 数据修改时间,当文件的数据被修改时才更新

change time(ctime): 元数据修改时间,当文件的元数据(权限,大小,

owner,group,mtime等)更新时则更新

stat ,ls --time=atime[ctime] -l

touch filename

若文件不存在,则创建一个空文件

若文件存在,则更新三个时间戳

-a 更新atime和ctime

-m 更新mtime和ctime

-c 若文件存在,则更新三个时间戳,若不在,不会创建新文件,无作为。

为什么一个byte等于8bit?

0 0

1 1

10 2

11 3

100 4

A

127

 

ASCII 3000

GB2313

Shift_JJS

Euc-kr

 

Unicode

 

Utf-8`

 

文件名通配符

 

*:匹配零或多个任意字符

?:匹配任意一个单一字符

0-9:表示任何数字

a-Z:表示所有字母,包括大小写

[linux]:表示包含l或i或n或u或x

[^linux]:表示不包含l和i和n和u和x

[:digit:]:表示任意数字

[:lower:]:表示小写字母

[:upper:]:表示大写字母

[:alpha:]:表示大小写字母

[:alnum:]:表示任意字母或数字

[:blank:]:表示空格(水平制表符)及TAB

[:space:]:表示空格(水平制表符)、回车(垂直制表符)及TAB

[:punct:]:表示符号

[:print:]:表示可打印字符

 

touch命令:创建文件

touch [OPTION]... FILE...

-a 仅改变 atime和ctime

-m 仅改变 mtime和ctime

-t [[CC]YY]MMDDhhmm[.ss]

指定atime和mtime的时间戳

-c 如果文件不存在,则不予创建

 

cp :复制文件或者目录

 

 

选项说明:

-r或-R:源文件是目录时使用;

-d:复制文件是软连接文件时,仅复制软连接文件本身;

-p:复制时保持源文件属性;等价于--preserv=mode,time,owner;

-a:归档复制,相当于rdp即:-dR --preserv=all;

 

-i 覆盖时交互式提示

-r 递归,可以复制目录

-d 默认不加-d时,cp复制软链接会将源复制过去,加上-d保留链接属性,把软链 接复制过去

--preserv=

mode 权限不变

owner[ship] 权限及owner,group 不变

time 三个时间戳不变

xattr acl权限不变

links 链接不变

context 文件的selinux上下文关系不变

all

-p 等于 --preserv=mode,owner,time

-a 等于rdp

-v 显示复制过程

-f 强制覆盖: 当普通用户对目标文件不可更改时,但对该目标文件所在的目录 有创建及删除文件的权限,则使用-f可以强制覆盖,实际上是先删除文件,再创建

-u 只覆盖源比目标文件新的文件

--backup-numbered 覆盖前,先将旧文件改名为 文件名.~数字~

scp root@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/

 

scp

实例1:从远处复制文件到本地目录

 

命令:

 

scp root@192.168.120.204:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/

 

说明:

 

从192.168.120.204机器上的/opt/soft/的目录中下载nginx-0.5.38.tar.gz 文件到本地/opt/soft/目录中

 

实例2:从远处复制到本地

 

命令:

 

scp -r root@192.168.120.204:/opt/soft/mongodb /opt/soft/

 

说明:

 

从192.168.120.204机器上的/opt/soft/中下载mongodb 目录到本地的/opt/soft/目录来。

 

实例3:上传本地文件到远程机器指定目录

 

命令:

 

scp /opt/soft/nginx-0.5.38.tar.gz root@192.168.120.204:/opt/soft/scptest

 

说明:

 

复制本地opt/soft/目录下的文件nginx-0.5.38.tar.gz 到远程机器192.168.120.204的opt/soft/scptest目录

 

实例4:上传本地目录到远程机器指定目录

 

命令:

 

scp -r /opt/soft/mongodb root@192.168.120.204:/opt/soft/scptest

 

输出:

 

mv:移动和重命名文件

mv [OPTION]... [-T] SOURCE DEST

• mv [OPTION]... SOURCE... DIRECTORY

• mv [OPTION]... -t DIRECTORY SOURCE...

常用选项:

-i: 交互式

-f: 强制 直接覆盖,不交互式,抵消i的作用

 

rm -rf :删除

-i 交互式

-f 强制删除

-r 递归

 

rename 旧名字 新名字 要改名的文件

rename doc txt *.doc

 

目录操作

tree 显示目录树

-d: 只显示目录

-L level:指定显示的层级数目

-P pattern: 只显示由指定pattern匹配到的路径

mkdir 创建目录

-p: 存在于不报错,且可自动创建所需的各目录

-v: 显示详细信息

-m MODE: 创建目录时直接指定权限

rmdir 删除空目录

-p: 递归删除父空目录

-v: 显示详细信息

rm -r 递归删除目录树

 

inode(index node)表中包含文件系统所有文件列表

一个节点 (索引节点)是在一个表项,包含有关文件的信息( 元数据 ),包

括:

文件类型,权限,UID,GID

链接数(指向这个文件名路径名称个数)

该文件的大小和不同的时间戳

指向磁盘上文件的数据块指针

有关文件的其他数据

文件引用一个是 inode号

人是通过文件名来引用一个文件

一个目录是目录下的文件名和文件inode号之间的映射

inode

索引节点:inode(比较抽象不好理解)

理解数据、元数据、inode、inode表、block(数据块)、block表、数据指针、inode bitmap、block bitmap等名词术语;

 

block:磁盘分区中存储数据的最小的单位;

数据:保存最终数据的block;

元数据:保存数据的属性信息;

inode:文件系统查找文件的id号;

inode表:就是文件系统中保存查找数据指针的表格;

block表:就是存放最终数据的一些block。

数据指针:在inode表中查找到的block的位置;

inode bitmap:统计了inode相关信息,如剩余可用的inode还有多少个,使用了多少inode等;

block bitmap:统计了block相关信息,如哪些block可用,哪些被使用了;

 

 

理解inode与软连接文件、硬链接文件、目录文件的关系;

理解inode与删除目录、删除文件的关系;

 

 

ln命令:

-s:创建软连接文件;

 

注意:在创建软连时,软连接的名词位置放置最后:

ln -s 源始文件 软连接名词

 

软连接和硬链接的区别:

硬链接不能夸分区创建;

删除源文件对连接的影响:删除源文件后,不影响硬链接文件;但软链接文件会受影;

 

注意:创建软连接文件是,目标文件一般使用相对路径;

ln 源 目的 (注意:源与目的要在同一文件系统下)

创建硬链接会增加额外的记录项以引用文件

对应于同一文件系统上一个物理文件

每个目录引用相同的inode号

创建时链接数递增

删除文件时:

rm命令递减计数的链接

文件要存在,至少有一个链接数

当链接数为零时,该文件被删除

不能跨越驱动器或分区

语法:

ln filename [linkname ]

 

软连接

ln -s 源路径 目的路径

 

链接文件:

硬链接:指向同一个inode的多个文件路径;inode号相同;

特性:

(1)目录不支持硬链接;

(2)硬链接不能跨文件系统;因为不同文件系统的inode是独立管理的,编号也是从0开始的,所以不能跨文件系统引用文件的inode编号;

(3)创建硬链接会增加inode引用计数;

本文由澳门新萄京官方网站发布于澳门新萄京官方网站,转载请注明出处:澳门新萄京官方网站入门操作,Linux基础命令知识

关键词: