📜  日常生活 Linux 命令

📅  最后修改于: 2022-05-13 01:57:04.551000             🧑  作者: Mango

日常生活 Linux 命令

  1. 清除终端:在我们的日常生活中,如果我们使用 LINUX,我们通常会在终端上工作。在终端上连续工作会使终端屏幕充满命令,为了删除它们并使我们的屏幕完全没有字符,我们经常使用clear 命令。组合键“Ctrl+l”与“清除”命令的效果相同。所以从下次开始使用 ctrl+l 来清除你的 Linux 命令行界面。
    注意:由于 ctrl+l 是一个组合键,所以我们不能在脚本中使用它。如果我们需要在 shell 脚本中清除屏幕,我们只需要调用命令'clear'。
  2. 运行命令并返回目录,一起:这也是一个很多人都不知道的惊人 hack。无论是什么命令,我们都可以运行它,然后返回到当前目录。为此,我们需要做的就是在括号中运行命令,即在()之间。
    例如 :
    输入 :
    cd /home/shivam/Downloads/ && ls -l

    输出 :

    -rw-r----- 1 shivam shivam    54272 May 3 18:37 text1.txt
    -rw-r----- 1 shivam shivam    54272 May 3 18:37 text2.txt
    -rw-r----- 1 shivam shivam    54272 May 3 18:37 text3.txt
    

    解释:在上面的命令中,它首先将当前目录更改为下载,然后列出该目录的内容,然后返回当前目录。

  3. 目录快捷方式:您可以通过将经常访问的目录添加到 CDPATH 环境变量来创建快捷方式。因此,假设您经常访问“/var/www/html/”。
    不用输入“cd /var/www/html”,您可以将 /var/www/ 添加到CDPATH ,然后您只需输入“cd html”。
    shivam:~> export CDPATH=$CDPATH:/var/www/
    shivam:~> cd html
    shivam:~:html>
    
  4. 替换单词或字符:
    • 如果您正在处理任何文本文件,然后在 myfile.txt 中用“story”替换任何单词的每个实例,例如“version”,您可以使用sed命令:
      # sed 's/version/story/g' myfile.txt
      
    • 此外,如果您想忽略字符大小写,则可以使用 gi 而不是 g :
      # sed 's/version/story/gi' myfile.txt
      
  5. 以下是您在终端上工作时可以使用的一些有用的快捷方式:
    光标移动控制:
    • Ctrl-a:将光标移动到行首
    • Ctrl-e:将光标移动到行尾
    • Ctrl-左/右:逐字导航(可能不适用于所有终端)修改文本:
    • Ctrl-w:删除光标左侧的整个单词
    • Ctrl-k:擦除到行尾
    • Ctrl-u:擦除到行首
  6. 以批处理模式运行 top: 'top' 是一个方便的实用程序,用于监控系统的利用率。它是从命令行调用的,它通过显示许多有用的信息来工作,包括 CPU 和内存使用情况、正在运行的进程数、负载、顶级资源命中者和其他有用的位。默认情况下,top 每 3 秒刷新一次报告。
    大多数情况下,我们在终端内运行“top”,查看统计数据几秒钟,然后优雅地退出并继续我们的工作。
    更好的是,如果我们只想在给定的时间段内运行这样的实用程序,而不需要任何用户交互:
    有很多可能的答案:
    • 您可以通过 cron 安排作业。
    • 您可以运行 ps 每 X 秒运行一次的 shell 脚本

    与其疯狂地尝试修补脚本,还有一个更简单的解决方案:

    top -b -d 10 -n 3 >> top-file
    

    我们以批处理模式(-b)运行顶部。它将每 10 秒刷新一次,由延迟 (-d) 标志指定,总共 3 次迭代 (-n)。输出将被发送到一个文件。这是输出的截图:
    linux 62

  7. 复制管道内容: “tee”是一个非常有用的实用程序,可以复制管道内容。现在, tee 真正有用的是它可以将数据附加到现有文件,使其成为一次将定期日志信息写入多个文件的理想选择。
    ps | tee file1 file2 file3
    

    我们将 ps 命令的输出发送到三个不同的文件!或者我们想要的数量。正如您在下面的屏幕截图中所见,所有三个文件都是同时创建的,并且它们都包含相同的数据。

  8. 导出: “导出”命令是 bash shell BUILTINS 命令之一。它具有三个可用的命令选项。通常,它将环境变量标记为与任何新派生的子进程一起导出,因此它允许子进程继承所有标记的变量。
    带有“导出”的常用选项
    • -p :在当前 shell 中导出的所有名称的列表
    • -n :从导出列表中删除名称
    • -f :名称作为函数导出

    例子 :

    • 没有“导出”的命令:
      $ a = geeksforgeeks.org
      $ echo $a
      geeksforgeeks.org
      $ bash
      $ echo $a
      

      从上面我们可以看出,默认情况下,从父进程派生的任何新子进程都不会继承父进程的变量。这是导出命令派上用场的地方。

      $ a = geeksforgeeks.org
      $ echo $a
      geeksforgeeks.org
      $ export a
      $ bash
      $ echo $a
      geeksforgeeks.org
      $

      在第 3 行,我们现在使用 export 命令使变量“a”在创建新子进程时被导出。结果,即使在创建了新的 bash shell 之后,变量“a”仍然包含字符串“geeksforgeeks.org”。

  9. basename – 从文件名中去除目录和后缀。 basename 打印 NAME 并删除任何前导目录组件。如果指定了 Suffix,它还将删除尾随 SUFFIX。例如:获取测试文件夹中存在的文件的名称
    $ basename test/gfg.txt
    gfg.txt
  10. grep: grep 在文件中搜索给定的字符或模式,并且可以用另一个字符串替换该字符串。这是在 Linux 中搜索文件的一种方法。
    grep [option(s)] pattern [file(s)]
      • 搜索文件数量: grep 可以同时搜索任意数量的文件。因此,例如,以下将在三个文件 file1、file2 和 file3 中搜索包含字符串GfG 的任何行
        grep GfG file1 file2 file3
      • 搜索所有文件中的文本:搜索当前目录(即用户当前工作的目录)中的所有文本文件,如果有短语“Linux is”
        grep 'Linux is' *

    使用 grep 命令可以尝试更多选项。