Linux基本指令(持续更新中..)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基本指令(持续更新中..)相关的知识,希望对你有一定的参考价值。

基本指令等:

部分快捷键:

ctrl+c 强制结束当前运行程序,终止命令
ctrl+d 结束当前运行程序  
先按ESC然后按. 或者同时按住ALT和. 则输入上一条命令的最后一个参数,与!$相同
Ctrl+l 清屏,相当于clear命令
Ctrl+o 执行当前命令,并重新显示本命令
Ctrl+s 阻止屏幕输出,锁定
Ctrl+q 允许屏幕输出
Ctrl+z 挂起命令


A

  1. alias:别名,直接输入显示当前已有的别名。
    alias #### = ‘VALUE‘, 定义别名,相当于输入####就执行VALUE
    在命令行中定义的别名,仅仅对当前shell进程有效,如果想要永久有效,则定义写入到配置文件中
    但是注意写入配置之后并未写入内存,并不会立即生效,如果想要立即生效,可以用 . ~/bashrc 或者 source ~/bashrc,注意.命令和路径中间有空格:
    ~/.bashrc下的更改只对当前用户有效。
    /etc/bashrc下的更改对所有用户有效。
    unalias #### :取消别名(永久取消也得在~/.bashrc中修改)
    unalisa -a :取消所有别名
    注意:如果别名定义的和其他命令重名,则优先执行别名(因为优先级别名最高),如果想要取消它,可以删除别名
    如果只是暂时用它原本的用法,则可以用 ‘###‘ 或者"####"或者 #### 或者 command ######,或者直接执行他的路径,
    21:04[[email protected] ~]# alias hostname=‘echo hello world‘
    21:05[[email protected] ~]# hostname
    hello world
    21:05[[email protected] ~]# ‘hostname‘
    centos7.6test
    21:05[[email protected] ~]# hostname
    centos7.6test
    21:05[[email protected] ~]# which hostname
    alias hostname=‘echo hello world‘
    /usr/bin/echo
    21:05[[email protected] ~]# whereis hostname
    hostname: /usr/bin/hostname /etc/hostname /usr/share/man/man7/hostname.7.gz /usr/share/man/man1/hostname.1.gz /usr/share/man/man5/hostname.5.gz
    21:06[[email protected] ~]# /usr/bin/hostname
    centos7.6test

B

  1. bc:linux中的计算器命令。
    用法:直接输入bc ,然后用obase(输出进制)和ibase(输入进制),输入要转换到的进制和数值,来控制输入输出结果  
    如果什么都不写直接输入数值,就是以10进制为基础的 。 退出用quit指令。
    obase=2
    1234
    10011010010
    quit

C

  1. cat:输出文本文件内容,后面跟上文件地址。如果跟上二进制文件则会乱码。
    注意和输出字符串的echo区分,echo它后面跟上字符串(或者变量保存的字符串内容,但变量前面需要加上${}输出其中的内容,其中花括号可以不写
    注意:对于反向单引号,经测试反向单引号`中只写入变量并不能显示其中内容,系统的错误解释中说反向单引号中内容不是命令,说明里面只能输入命令,变量则作为命令的参数
    反向单引号中是优先级最高,在语句中先执行里面的命令
cat /etc/shells;  
cat /etc/motd; 
cat /etc/profile.d/evn.sh; 
cat /etc/profile;
cat /etc/issue;
  1. clock :查看硬件时钟
    clock -s: 把硬件时钟写到系统时间上
    clock -w: 把系统时间写到硬件时钟上

  2. cal:查看日历 可以指定某年某月 cal 9 1752 ; cal MM YYYY

D

  1. date:查看系统时间,也可以更改等等,详细和用法可以查看help。
    有个快捷更改时间格式,用阿拉伯数字 MMDDhhmmYYYY.ss
    date -s "YYYY-MM-DD hh:mm:ss"这样也可以设置所有的时间

  2. df:查看硬件

E

  1. echo:输出其后的字符串(可用${}内加变量输出变量内保存的字符串,花括号可以不写)。

技术图片

技术图片

echo $PS1; 
echo $SHELL;
echo $PATH; 
echo $LANG

echo 后面什么都不加和 加双引号(弱引用)功能一样,只把后面的变量替换(变量前面要加上变量内容引用符$)
echo 后面加上单引号(强引用)则吧单引号内的所有内容全部当做字符
echo后面加上反向分号,则是先运算反向分号中间的内容(优先级最高,相当于数学中的小括号,里面的命令和变量都会转换),然后再运算外部的内容
注:反向单引号也相当于$(####)

21:08[[email protected] ~]# echo echo $PS1
echo [33[01;35m]A[[email protected]h w]$[33[00m]
21:08[[email protected] ~]# echo "echo $PS1"
echo [33[01;35m]A[[email protected]h w]$[33[00m] 
21:09[[email protected] ~]# echo ‘echo $PS1‘
echo $PS1
21:09[[email protected] ~]# echo `echo $PS1`
[33[01;35m]A[[email protected]h w]$[33[00m]
21:12[[email protected] ~]# echo `echo ‘$PS1‘`
$PS1
21:12[[email protected] ~]# echo ‘ehco `$PS1`‘
ehco `$PS1`

echo后面可以加花括号,其中的元素之间加上两个..表示连续范围(也可以限定跳跃间隔)
或者加不连续范围的数据(花括号内用逗号隔开)则可以组合。如下:

21:12[[email protected] ~]# echo {1..10}
1 2 3 4 5 6 7 8 9 10
21:13[[email protected] ~]# echo {1..10.2}
{1..10.2}
21:13[[email protected] ~]# echo file{1,4,a,d}.{log,txt}
file1.log file1.txt file4.log file4.txt filea.log filea.txt filed.log filed.txt
  1. enable :查看和启动内部命令 ,禁用用 enable -n #### , 查看禁用的命令用 enable -n.

F


G


H

  1. hostname:查看主机名
  2. help:查看内部命令列表,帮助等等功能
  3. hash:内部命令,缓存到内存中的命令路径表,一旦注销便清空。

    hash -l 更详细显示路径和命令。
    hash -d #### 删除掉存储的hash这一条命令路径
    hash -r 删除掉所有的

  4. halt:关机
  5. history:查看执行过的历史命令行
    其中变量HISTSIZE控制输出的历史行数,可以在/etc/profile中修改(开机永久修改,内存中临时修改则直接HISTSIZE=####即可)
    刚刚执行过的命令的历史都存放在内存中,只有当系统正常退出的时候,才会把内存中的历史命令存放在家目录下的一个文件中.bash_history
    如果不正常退出,则会丢掉一部分历史数据。

命令历史参数等操作:

技术图片

技术图片

历史搜索:
技术图片

调用历史命令中的参数:
技术图片

!string:可以不用打全部,但执行的是history中离得最近的那一个以###开头的命令。 !?string:同理也是离得最近的那一个包含####的命令。

history -c:清空内存中的历史,但并不清除文件中保留的历史。这样下次开机的时候会丢失与上一次开机后输入清空历史命令前的不同的历史命令。
更多用法参照帮助。

技术图片

与历史相关的一些环境变量,建议存在/etc/profile.d/evn.sh中,这样不会影响系统原先的文件内容:
技术图片


I

  1. ifconfig :用来查看网络配置信息
  2. id -u :查看当前用户的ID编号,管理员为0 其他用户不是0.(id -u zhang)
  3. init 阿拉伯数字: 切换工作模式 查看帮助获取
    init 3:字符界面 init 5:图形界面 init 0 :关机 init 6:重启
    注意:这个切换可以把图形界面完全关闭,而ctrl+alt+F# 只是增加了一个终端

J


K

  1. kill ####:杀掉进程

L

  1. ls :查看当前目录下的文件
    ls -a:查看所有包括隐藏
    ll:列表方式查看
    更多用法查看帮助

M

  1. makewhatis(centos6) mandb(centos7):whatis生成

N

  1. nano:简单的文本编辑 后面直接跟文本路径即可

O


P

  1. poweroff:关机
  2. ping

Q

  1. quit:退出

R

  1. reboot:重启
  2. runlevel:查看当前和上一个工作模式
  3. rpm -ivh:后面跟安装包,装程序

S

  1. shutdown [option] [time] [message]:关机,默认是1分钟之后关机,查看帮助获取更多信息。
    shutdown -r:重启 -h :halt -c:cancel
    time:默认1分钟 ,now:立刻关机 +m:相对几分钟之后关机 hh:mm:绝对时间关机
  2. screen:多用户共同连接投屏,查看帮助获取更多信息
    screen有一个很好的功能就是可以用它在远程操作万一掉线时候,里面的命令仍然在运行不会丢失
      screen -S(大写) ####:创建####名字的session
      screen -x(小写)####:加入已经创建的session,并且是多用户公用单屏模式 (####可以是编号也可以是点后面的名字)
      screen -r(小写)[####]: 返回session(针对单个用户来说),如果screen里面有用户 ,则用screen -r 进不去 只能用-x
      快捷键:ctrl+a 先按 然后再按一下d 短暂退出这个screen
      exit:退出并关闭screen
      screen -ls:显示所有的screen
      screen -d:退出screen(所有已经连接上的都会退出) 
      kill ####:杀掉screen,需要先查询编号或者名字

  3. source:和一个.作用相同,使文件生效。

T

  1. tty:查看当前设备分配的终端号 比如 /dev/tty3
  2. type:查看命令的类型
  3. timedatectl:查询时区信息(可以打出time然后连按两次tab获取time后面可以补全的命令列表,注意题么后面不要加空格)
      timedatectl list-timezones(连按两次tab补全后面的信息),可以查看所有的时区列表
      timedatectl set-timezones ######:设置时区
  4. touch :创建文件,后面直接跟路径和文件名称
    21:19[[email protected] ~]# touch /data/`date +%F`.log
    21:20[[email protected] ~]# ls /data -a
    .  ..  2019-03-08.log

U

1.uname -r :查看本机的linux内核版本:


V


W

  1. whoami:查看当前的用户账户
  2. who am i 查看当前用户和终端以及登录信息
  3. who查看当前所有用户和终端等详细信息。
    who -b: 查看系统启动的时间
  4. w :现实更全的用户,终端,CPU,以及用户的当前进行的操作等信息。

    21:20[[email protected] ~]# whoami
    root
    21:23[[email protected] ~]# who am i
    root     pts/0        2019-03-08 18:58 (192.168.36.1)
    21:23[[email protected] ~]# who 
    root     pts/0        2019-03-08 18:58 (192.168.36.1)
    21:23[[email protected] ~]# w
    21:23:59 up  2:26,  1 user,  load average: 0.00, 0.01, 0.05
    USER     TTY      FROM             [email protected]   IDLE   JCPU   PCPU WHAT
    root     pts/0    192.168.36.1     18:58    7.00s  0.33s  0.05s w
  5. which :查看命令的路径位置,并标准输出,它本身是一个别名
  6. whereis: 查看文件的路径位置,它不仅能输出命令(命令也是文件)的位置,还有命令帮助等的位置,也能查找其他普通文件。(which只能查看命令的路径)
  7. whatis:简单的查询帮助,但是如果系统刚刚装好可能用不了。需要自己启动它 Centos6里面是用 makewhatis centos7里面 用mandb

X


Y


Z

以上是关于Linux基本指令(持续更新中..)的主要内容,如果未能解决你的问题,请参考以下文章

linux常用指令大全(持续更新中)

回归 | js实用代码片段的封装与总结(持续更新中...)

[ Linux 长征路第一篇] 基本指令

《linux实用指令积累》持续更新。。。

Linux常用命令行指令(持续更新~)

小程序各种功能代码片段整理---持续更新