• 10个很实用Linux命令,千万不要错过


     

     

    下面介绍的命令都是不常见但又是很实用的命令,学会了它们,工作上更得心应手

    1. !!

    回想下自己身上是否发生过这样一种情况,当键入一行很长的命令敲击回车之后才发现命令开头忘记加 sudo 了,这时候你只需要键入 sudo !!,命令行自动把 !!替换成你上一条运行的命令

    [tt@ecs-centos-7 ~]$ yum install cowsay
    Loaded plugins: fastestmirror
    You need to be root to perform this command.
    [tt@ecs-centos-7 ~]$ sudo !!
    sudo yum install cowsay
    

    2. cd -

    使用过Linux系统的人都知道 cd ..命令 是返回上一级目录,但是很少人知道 cd - 命令作用是返上一次cd到的目录

    [root@ecs-centos-7 ~]# pwd
    /root
    [root@ecs-centos-7 ~]# cd /home/tt
    [root@ecs-centos-7 tt]# pwd
    /home/tt
    [root@ecs-centos-7 tt]# cd -
    /root
    [root@ecs-centos-7 ~]# pwd
    /root
    [root@ecs-centos-7 ~]# cd -
    /home/tt
    [root@ecs-centos-7 tt]# pwd
    /home/tt
    

    上面的例子中,首先当前目录是:/root 执行 cd /home/tt之后目录变为/home/tt,然后执行 cd - 目录又变成了/root,再次执行cd -,当前目录又回到了/hom/tt

    3. cd

    你可能知道 ~ 表示Home目录,但是很少人知道的一个小窍门: 如果你键入 cd 命令,依然能回到Home目录

    [root@ecs-centos-7 ~]# pwd
    /root
    [root@ecs-centos-7 ~]# cd /home/tt
    [root@ecs-centos-7 tt]# pwd
    /home/tt
    [root@ecs-centos-7 tt]# cd
    [root@ecs-centos-7 ~]# pwd
    /root
    [root@ecs-centos-7 ~]# 
    

    4. 搜索

    你可以通过键盘上的上下键搜索已经键入过的命令,可能你需要连续按15次向上箭头的按键才能找到曾经输入过的ls 命令。现在使用反向搜索可以很轻松的实现: 按一下Ctrl + R键后开始输入命令,反向搜索功能会从最近历史命令中查找和输入最匹配的命令

    [tt@ecs-centos-7 ~]$ ls -lh
    total 0
    -rw-rw-r-- 1 tt tt 0 Jul  2 00:40 a.txt
    [tt@ecs-centos-7 ~]$ date
    Thu Jul  2 00:41:00 CST 2020
    (reverse-i-search)`l': ls -lh
    
    total 0
    -rw-rw-r-- 1 tt tt 0 Jul  2 00:40 a.txt
    [tt@ecs-centos-7 ~]$ 
    

    5. 重用参数

    另一个小窍门是 !$ 它会被替换成前面一个命令的参数。这是很实用的,例如,当你新创建了一个目录并且想进入这个目录:

    [tt@ecs-centos-7 ~]$ mkdir temp
    [tt@ecs-centos-7 ~]$ cd !$
    cd temp
    [tt@ecs-centos-7 temp]$ pwd
    /home/tt/temp
    [tt@ecs-centos-7 temp]$
    

    6. 拷贝和粘贴

    你可能已经发现了 Ctrl + C 和 Ctrl + V,这两个组合在终端上是预留给正在运行的进程用的,可以用Ctrl + Shift + CCtrl + Shift + V来替代 Ctrl + C 和 Ctrl + V的功能。

    7. 让你的程序后台运行

    在终端运行应用程序时,应用程序会随着终端的关闭而退出。使用 nohup命令可以实现终端退出,应用程序依然运行着,nohup 是 "no hang up"的缩写。
    例如:使用scp命令从本地传输大文件到远程服务器上,假如突然关掉终端的话,如何保证传输不会中断呢?下面的命令会解决这个问题。

    nohup scp big_file user@host:~/big_file

    nohup会创建一个nohup.out文件记录命令的输出

    8. 自动确认

    在编写shell脚本自动执行任务时,有时需要人工输入 yes ,命令才会往下执行。在命令前加上 yes |就会跳过人工输入的步骤,下面的命令会自动输入 yes

    yes | yum install lrzsz  
    

    如果想自动输入 no ,则在命令前加上no |,下面的命令会自动输入 no

    9. 粉碎文件

    如果你比较注重隐私的话,那这个命令很适合你。rm命令常用来删除文件,删除之后可以通过特殊的软件提取出已经删除的文件数据。想要彻底删除,可以试下下面的命令

    shred -zvu filename
    

    10. vim为文件设置密码

    • 如果文件处于vim编辑状态,切换到命令模式,输入:X(注意:这里是大写的X) 输入密码,再次确认密码之后保存退出
    • 如果文件没有处于编辑状态,使用 vim +X filename 也可以为文件设置密码

    下面是为文件 a.txt 设置密码

    [root@ecs-centos-7 ~]# vim a.txt
    :X
    Warning: Using a weak encryption method; see :help 'cm'                 
    Enter encryption key: ***
    Enter same key again: ***
    

    设置密码之后,无论是通过cat还是vim都无法直接查看或者编辑 a.txt

    [root@ecs-centos-7 ~]# cat a.txt 
    VimCrypt~01!q,oot@ecs-centos-7 ~]#
    [root@ecs-centos-7 ~]# vim a.txt
    Need encryption key for "a.txt"
    Warning: Using a weak encryption method; see :help 'cm'
    Enter encryption key:
    

    从上面可以看出,使用 cat a.txt命令看到的是一串乱码,通过vim a.txt 编辑文件,需要先输入密码

     
  • 相关阅读:
    为什么Java的main方法必须是public static void?
    2. 直接插入、折半插入、希尔排序及其比较(插入类排序)
    1. 冒泡与选择排序及其比较
    0.排序介绍与性能度量
    (十)更快的排序算法(归并、快排、基数)
    (九)排序(选择、插入、希尔)
    (八)递归
    (七)栈的三种实现
    (六)栈的规则及应用
    (五)如何写测试类
  • 原文地址:https://www.cnblogs.com/cheyunhua/p/13343376.html
Copyright © 2020-2023  润新知