标签: Linux

  • 站长必藏:26个Linux服务器管理常用SSH命令行

    SSH命令行可能是访问网站服务器最安全,最方便的方法之一。

    f4fb2f39157048d87fc30f4216fd37a0

    这是用于访问您站点上文件的协议,即“ Secure Shell”。只要您拥有登录凭据,就可以使用它从任何地方访问您的站点,并最大程度地保证这个访问是安全的。

    在本文中,您将了解一些可用于WordPress网站服务器管理的 最有用的SSH命令行

    1. 什么是SSH以及如何使用?
    2. 26个最常见的SSH命令行

    什么是SSH以及如何使用?

    SSH是用于访问WordPress网站上文件的安全协议。这篇文章重点介绍可以使用的SSH命令行,因此,这里将不再展开介绍如何使用SSH访问您的站点,而只会简单概述一下。

    什么是SSH?

    SSH或“Secure Shell”是一种协议,可用于访问远程服务器上的文件和目录。SSH规范将它定义为:

    “用于在不安全的网络上进行安全的远程登录和其他安全的网络服务的协议。”

    您可以使用终端(macOS或Linux上)或例如PuTTY或者Xshell客户端(Windows上),通过SSH访问您的站点,而不是使用Web浏览器。

    如何在WordPress中使用SSH?

    对于WordPress网站,SSH将帮助您通过管理界面或直接访问WordPress安装文件以及您添加到wp-content目录中的所有文件。

    您很有可能会在wp-content目录中使用它,偶尔在根目录中使用它来访问wp-config.php之类的文件。

    要在您的站点管理工作中使用SSH命令行,请打开“终端”或客户端(如PuTTY或Xshell),然后通过输入服务器相关信息进行安全访问。包括:

    • 服务器IP地址;
    • 服务器用户名;
    • 服务器密码;
    • 访问端口。

    以SSH客户端Xshell为例,安装启用Xshell,点击“文件-新建”来创建一个站点的会话:选择协议为SSH;填写服务器IP地址;输入端口,一般是22。如下图:

    站长必藏:26个Linux服务器管理常用SSH命令行插图1

    服务器基本信息填写

    此外,你还需要填写该服务器的用户身份验证信息,一般使用的是用户名+密码的登录方式,当然也有可能使用密钥等其他安全方式登录。如下图:

    站长必藏:26个Linux服务器管理常用SSH命令行插图2

    服务器身份验证

    完成此操作后,即可开始针对你的WordPress网站服务器使用SSH命令行。

    如果您的连接被服务器拒绝,则可能是由于多种原因之一。你可能还需要进行故障排除(常见的原因有账号密码错误、端口错误、服务器当前网络无法访问等),以重新建立连接。

    什么是PuTTY?如何使用?

    如果您使用的是macOS或Linux,则已经具有通过SSH访问WordPress站点服务器的工具,因为系统内置终端即可使用SSH。

    但是,如果您使用的是Windows,则需要安装客户端才能使用SSH。

    最受欢迎的SSH客户端是PuTTY(小编则更习惯了上面提到的Xshell)。您需要下载并安装它,然后才能从Windows访问您的服务器。然后,您在PuTTY中使用与在终端中相同的SSH命令。

    如何使用WordPress自动执行SSH命令?

    使用SSH访问WordPress站点的好处之一是,您可以自动化常用命令。

    您可以通过使用WP-CLI(WordPress命令行界面)来实现。通过WP-CLI界面,您可访问WordPress特定命令库,使用SSH以外的命令。

    使用WP-CLI意味着您可以自动化WordPress管理任务,例如更新WordPress安装,安装插件和配置远程服务器。使用命令行大大提升WordPress管理效率。

    将SSH与WordPress结合使用的好处

    将SSH与WordPress结合使用有许多好处:

    • 安全。随处随地通过安全的通道对服务器进行访问。
    • 方便。无需进入WordPress仪表盘即可完成许多WordPress管理工作。
    • 高效。在许多情况下,使用SSH命令比使用WordPress仪表盘或通过SFTP访问文件要快得多。

    上面我们简单地了解了什么是SSH以及如何使用命令行管理WordPress,接着我们一起来深入了解最常见的一些SSH命令行。

    26个最常见的SSH命令行

    SSH协议具有多种命令。下面为方便起见,列出了最常用的类别,并将它们分为几类。

    1. 目录命令
    2. 文件或目录管理命令
    3. 文件命令
    4. 终端命令
    5. 其他有用SSH命令行

    目录命令

    您可以使用多种SSH命令来操作处理WordPress网站中的目录(或文件夹)。

    pwd –显示当前目录(当前位置的完整路径)

    使用pwd命令可显示您当前所在位置的服务器完整路径。

    站长必藏:26个Linux服务器管理常用SSH命令行插图3

    pwd命令

    当你不清楚你当前在服务器中所在的位置时,请使用此命令,您将看到有关确切位置的更多信息。这对检查您的位置很有用,因为您没有使用代码编辑器或FTP客户端时,无法直观地看到当前所在位置。

    ls –显示目录内容(列出文件名)

    使用ls命令将显示当前目录所有内容。

    站长必藏:26个Linux服务器管理常用SSH命令行插图4

    ls命令

    您还可以使用其他参数来自定义ls命令或将其添加到命令返回的信息中:

    • ls -a 显示隐藏的文件。
    • ls -l 显示目录内容的文件详细信息,例如权限,所有权,日期等。
    • ls -s 以块为单位列出文件的大小。
    • ls -s -h 以易于阅读的形式显示大小。

    确保在命令和任何参数之间键入一个空格。

    站长必藏:26个Linux服务器管理常用SSH命令行插图5

    ls -a命令

    cd –更改目录位置

    cd命令即帮助你从当前目录进入到另一个目录。您可以移至当前目录的子目录,也可以使用正确的参数向上或向下移动。

    下面的命令即从服务器的根目录转到public目录:

    cd public
    cd public
    cd public

    要上移目录树或返回原目录,请使用以下参数之一:

    • cd .. 转到当前位置上一级目录。
    • cd ../foldername 转到您上一级目录中的另一个文件夹中。
    • cd – 转到当前位置的一级目录。
    • cd / 转到根目录。

    在下面的屏幕截图中,我进入了某个网站的根目录并列出了其内容。如果您WordPress站长,应该对这些文件不陌生:

    站长必藏:26个Linux服务器管理常用SSH命令行插图6

    进入网站根目录并列出文件内容

    mkdir –创建一个新目录

    使用mkdir命令,可以在当前目录中创建一个新目录。

    举个栗子,比如您位于WordPress某个插件文件夹中,并且想要为样式表添加目录,则可以使用以下命令:

    mkdir styles
    mkdir styles
    mkdir styles

    这会将一个新的空目录添加到当前所在的文件夹中。如果你要创建的目录不在当前位置,你需要输入完整的路径地址。打个比方你现在所在位置为wp-content文件夹,那你输入命令应该像:

    mkdir /plugins/myplugin/styles
    mkdir /plugins/myplugin/styles
    mkdir /plugins/myplugin/styles

    rmdir –删除目录

    rmdir命令将删除服务器上的目录。使用该命令要小心谨慎,因为没有后悔药可吃

    与一样mkdir,您可以使用rmdir命令来删除当前位置的目录:

    rmdir styles
    rmdir styles
    rmdir styles

    或者,您也可以使用rmdir命令来删除指定路径的文件夹,比如:

    rmdir /plugins/myplugin/styles
    rmdir /plugins/myplugin/styles
    rmdir /plugins/myplugin/styles

    rm命令还可以添加其他参数,完成更多的删除动作。

    • rm * foldername –删除目录中的所有文件或内容。
    • rm -r foldername –删除文件夹以及文件夹内的所有内容。

    文件或目录管理命令

    以下命令可用于文件或文件夹/目录。

    cp –复制文件或文件夹

    你可以使用cp命令来复制文件或者文件夹到另一个位置。您需要指定要将文件或文件夹复制到的位置。

    cp filename.extension /dir/
    cp filename.extension /dir/
    cp filename.extension /dir/

    上面的命令指定要复制的文件的名称(包括扩展名)及复制位置。

    你还可以对复制的文件执行重命名(即新版本的名称与原始版本的名称不同),如:

    cp filename.extension /dir/filename.extension
    cp filename.extension /dir/filename.extension
    cp filename.extension /dir/filename.extension

    此命令还可以使用各种参数,来完成不同的操作:

    • cp -r 复制文件夹的所有内容。
    • cp -f 如果已有另一个同名文件,则删除目标文件,并用新文件覆盖它。
    • cp -i 复制前会提示警告信息。
    • cp -u 仅当文件具有不同的内容时,才覆盖目标文件夹中的文件。
    • cp -n检查文件是否存在,如果存在,将不会复制。该命令不会覆盖文件。
    • cp -a 在保留原文件属性的前提下复制文件。

    mv –移动文件或文件夹

    除了复制文件和文件夹,您还可以移动它们。你可以通过mv命令来实现。

    与一样cp,您可以移动文件或文件夹并保持相同的名称,也可以移动并执行重命名操作。

    • mv filename.extension /dir/ 移动文件并保持相同的名称。
    • mv filename.extension /dir/filename1.extension 移动并重命名文件。
    • mv filename/ .. 将文件移至上一个文件夹。

    zip –压缩文件或文件夹

    您可以对文件夹或文件使用的另一个命令是zip,压缩文件夹及其内容。命令需包括将被压缩为zip文件的文件/文件夹的名称。您还可以加入一些参数,来实现不一样的压缩操作:

    • zip -r filename.zip foldername 仅压缩,不删除文件夹。
    • zip -m filename.zip foldername 压缩文件夹并将其删除,仅留下压缩版本的文件夹。
    • zip -d filename.zip foldername 从指定的现有zip存档中删除文件。
    • zip -u filename.zip foldername 更新现有zip归档文件中的文件:如果您只是想更新了原始文件并且不想删除该zip文件并创建一个新文件,这个命令则非常有用。

    站长必藏:26个Linux服务器管理常用SSH命令行插图7

    zip -r命令

    然后,当您列出文件夹的内容时,您将看到zip文件和原始文件夹(如果使用的命令是zip -r),但如果使用的命令是zip -m,则只会看到新的zip文件。

    站长必藏:26个Linux服务器管理常用SSH命令行插图8

    zip压缩文件

    unzip –解压压缩包

    unzip 命令将解压缩目录中的zip文件并提取压缩包里的内容至当前目录。

    unzip twentyseventeen.zip
    unzip twentyseventeen.zip
    unzip twentyseventeen.zip

    如果您没有在压缩时删除原始文件夹,请不要使用这个命令,因为该命令不会覆盖原始文件夹。因此,如果你执行压缩命令时如无需保留原文件夹时,应该使用zip -m命令压缩,又或者使用rm命令来删除原文件夹后再执行解压命令。

    您还可以添加参数来执行不一样的解压操作:

    • unzip filename.zip -x excludedfile.zip 指定不要处理.zip压缩文件中的哪些文件。
    • unzip filename1.zip filename2.zip filename3.zip将解压缩多个文件。您可以根据需要使用任意数量的zip文件,这比在FTP客户端中执行此操作要快得多。

    tar –创建和解压压缩档案

    tar命令用于创建和解压.tar.gz格式的压缩文件,一般情况下我们使用此命令来替代.zip归档文件。

    要压缩文件或文件夹,可以使用tar cvzf命令。压缩文件夹的语法为:

    tar cvzf archivename.tar.gz directoryname
    tar cvzf archivename.tar.gz directoryname
    tar cvzf archivename.tar.gz directoryname

    上面archivename是要创建压缩文件的名称,directoryname则是需要压缩的文件夹的名称。

    与压缩命令对应的解压命令是tar xvzf

    tar xvzf archivename.tar.gz
    tar xvzf archivename.tar.gz
    tar xvzf archivename.tar.gz

    这四个字母代表具体说明:

    • c 告诉tar这是一个压缩文件命令。
    • x 告诉tar这是一个解压文件命令。
    • v 告诉tar在压缩或解压缩过程中显示正在处理的文件名。
    • z 告诉tar通过gzip支持压缩或解压缩。
    • f 告诉tar您需要操作的档案名称,也就是说f后面必须跟上要处理的文件名。。

    文件命令

    以下是专门用于文件处理的最常见SSH命令列表。

    touch –创建一个新文件

    要在服务器上创建一个新的空文件,可以使用touch命令:

    touch style.css
    touch style.css
    touch style.css

    您只能在当前目录中创建文件,因此在使用touch命令之前,您必须通过cd命令进入对应的目录。

    cat –显示文件内容

    要显示文件的内容,使用cat命令。

    站长必藏:26个Linux服务器管理常用SSH命令行插图9

    cat命令

    该命令可以在终端或PuTTY中显示任何文件的全部内容。

    grep –搜索特定短语

    如果您需要某一特定文件上查找的指定内容(尤其是一些内容比较多的文档),则可以使用grep命令搜索特定的内容。

    下面的截图是演示在某一主题的sidebar.php文件中搜索“ sidebar”一词。

    站长必藏:26个Linux服务器管理常用SSH命令行插图10

    grep命令

    使用此命令可以显示指定文件包含搜索词的所有行。

    如果我想搜索不止一个单词的字符串,则需要将其括在英文双引号中:

    grep “nav class” footer.php
    grep “nav class” footer.php
    grep "nav class" footer.php

    grep命令带参数,用于自定义搜索:

    • grep -i "string" filename 在文件中不区分大小写地搜索字符串。
    • grep -c "string" filename 计算文件中字符串的实例数。
    • grep -l "string" * 列出包含字符串的文件。
    • grep -n "string" filename 在指定文件搜该字符串,并显示行号以结果。

    head –读取文件的前10行

    如果您只想读取文件的开头行,可以使用head命令:

    head filename.extension
    head filename.extension
    head filename.extension

    站长必藏:26个Linux服务器管理常用SSH命令行插图11

    head命令

    tail –读取文件的最后10行

    tail命令的工作方式与head命令相同,但是读取文件的最后十行:

    tail filename.extension
    tail filename.extension
    tail filename.extension

    find –搜索文件和目录

    find命令可帮助您搜索文件和目录,并返回符合指定条件的文件和目录。下面的命令将在当前目录中搜索名称包括 “index” 的所有文件:

    find . -name “index”
    find . -name “index”
    find . -name “index”

    find命令语法为:

  • 40个最常用的Linux命令行大全

    40个最常用的Linux命令行大全

    在撰写本文时,Linux在台式机上的全球市场份额为2.68%,但超过90%的云基础设施和托管服务都在该操作系统中运行。仅出于这个原因,熟悉流行的Linux命令就至关重要。

    根据2020年StackOverflow调查,Linux是专业开发人员使用最多的操作系统,拥有令人印象深刻的55.9%的市场份额。这不仅仅是巧合。Linux是免费的、开源的,比竞争对手具有更好的安全性,并且拥有强大的命令行,使开发人员和高级用户更加高效。

    无论您是经验丰富的系统管理员还是Linux新手,都可以利用本指南。

    1. 什么是Linux命令?
    2. 最常用的Linux命令
    3. Linux命令备忘单

    什么是Linux命令?

    Linux命令是在命令行上运行的程序或实用程序。命令行是一个界面,它接受文本行并将其处理为计算机的指令。

    任何图形用户界面(GUI)都只是命令行程序的抽象。例如,当您通过单击“X”关闭窗口时,该操作后面会运行一个命令。

    标志(flag)是我们可以向您运行的命令传递选项的一种方式。大多数Linux命令都有一个帮助页面,我们可以使用-h标记调用该页面。大多数情况下,标志是可选的。

    argumentparameter是我们给命令的输入,以便它可以正常运行。在大多数情况下,参数是一个文件路径,但它可以是您在终端中键入的任何内容。

    可以使用连字符 (-) 和双连字符 (--)调用标志,而参数的执行取决于将它们传递给函数的顺序。

    最常用的Linux命令

    在开始使用最常用的Linux命令之前,请确保启动终端(terminal)。在大多数Linux发行版中,您可以使用Ctrl + Alt + T来执行此操作。如果这不起作用,请在应用程序面板中搜索“terminal”

    Linux终端模拟器

    Linux终端模拟器。

    现在,让我们一起来了解40个最常用的Linux命令。其中许多选项可以串到它们,所以请务必查看命令手册.

    1. ls命令

    ls可能是每个Linux用户在其终端中键入的第一个命令。它允许您列出您想要的目录的内容(默认情况下是当前目录),包括文件和其他嵌套目录。

    ls
    ls
    ls

    它有很多选择,所以最好使用 --help 来获得一些帮助。此标志返回所有可以与 ls一起使用的flags参数。

    例如,要着色 ls 命令的输出,您可以使用以下命令:

    ls –color=auto
    ls –color=auto
    ls --color=auto

    ls着色命令

    ls着色命令

    现在 ls 命令输出已着色,您可以欣赏目录和文件之间的区别。

    但是,用彩色标志打字是低效的:这就是我们使用命令 lsalias 的原因。

    2.alias命令

    alias命令允许您在shell会话中定义临时别名。创建别名时,您指示shell用一系列命令替换单词。

    例如,要设置 ls 为颜色而不每次键入标志 --color,您将使用:

    alias ls=“ls –color=auto”
    alias ls=”ls –color=auto”
    alias ls="ls --color=auto"

    正如你所看到的,alias命令需要一个关键值对参数:alias NAME="VALUE" .请注意,该值必须是使用引号。

    如果你想列出你的shell会话中所有的别名,你可不使用argument运行命令alias

    alias
    alias
    alias

    alias命令

    alias命令。

    3.unalias命令

    顾名思义,unalias命令旨在从已定义的别名中删除alias。要删除以前的ls别名,可以使用:

    unalias ls
    unalias ls
    unalias ls

    4. pwd命令

    pwd命令代表“打印工作目录”,它输出您所在目录的绝对路径。例如,如果您的用户名是“john”,并且您位于文档目录中,则其绝对路径将是 /home/john/Documents.

    要使用它,只需在终端中键入pwd

    pwd
    # My result: /home/wbolt/Documents/linux-commands
    pwd
    # My result: /home/wbolt/Documents/linux-commands
    pwd
    # My result: /home/wbolt/Documents/linux-commands

    5. cd命令

    cd命令与ls都非常流行。它指的是“更改目录”,顾名思义,它会将您切换到您试图访问的目录。

    例如,如果您在Documents目录中,并且试图访问其名为Videos的子文件夹之一,则可以通过键入以下内容来输入:

    cd Videos
    cd Videos
    cd Videos

    您还可以提供文件夹的绝对路径:

    cd /home/wbolt/Documents/Videos
    cd /home/wbolt/Documents/Videos
    cd /home/wbolt/Documents/Videos

    在使用cd命令时,有一些技巧可以为您节省大量时间:

    1. 进入home文件夹

    cd
    cd
    cd

    2. 向上移动一个级别

    cd ..
    cd ..
    cd ..

    3. 返回上一个目录

    cd –
    cd –
    cd -

    6. cp 命令

    直接在Linux终端上复制文件和文件夹非常容易,有时它可以取代传统的文件管理器。

    要使用cp命令,只需将其与源文件和目标文件一起键入即可:

    cp file_to_copy.txt new_file.txt
    cp file_to_copy.txt new_file.txt
    cp file_to_copy.txt new_file.txt

    还可以使用递归标志复制整个目录:

    cp -r dir_to_copy/ new_copy_dir/
    cp -r dir_to_copy/ new_copy_dir/
    cp -r dir_to_copy/ new_copy_dir/

    请记住,在Linux中,文件夹以正斜杠 (/)结尾。

    7. rm命令

    既然您已经知道了如何复制文件,那么了解如何删除它们将很有帮助。

    您可以使用rm命令删除文件和目录。但在使用时要小心,因为用这种方法恢复删除的文件非常困难(但并非不可能)。

    要删除常规文件,请键入:

    rm file_to_copy.txt
    rm file_to_copy.txt
    rm file_to_copy.txt

    如果要删除空目录,可以使用递归(-r)标志:

    rm -r dir_to_remove/
    rm -r dir_to_remove/
    rm -r dir_to_remove/

    另一方面,要删除包含内容的目录,需要使用force(-f)和recursive标志:

    rm -rf dir_with_content_to_remove/
    rm -rf dir_with_content_to_remove/
    rm -rf dir_with_content_to_remove/

    警告:误用这两个标志,你可能会抹掉一整天的工作!

    8. mv命令

    您可以使用mv命令在文件系统中移动(或重命名)文件和目录。

    若要使用此命令,请将其名称与源文件和目标文件一起键入:

    mv source_file destination_folder/
    mv command_list.txt commands/
    mv source_file destination_folder/
    mv command_list.txt commands/
    mv source_file destination_folder/
    mv command_list.txt commands/

    要使用绝对路径,请使用:

    mv /home/wbolt/BestMoviesOfAllTime ./
    mv /home/wbolt/BestMoviesOfAllTime ./
    mv /home/wbolt/BestMoviesOfAllTime ./

    …where ./是您当前所在的目录。

    您还可以使用mv重命名文件,同时将其保留在同一目录中:

    mv old_file.txt new_named_file.txt
    mv old_file.txt new_named_file.txt
    mv old_file.txt new_named_file.txt

    9.mkdir命令

    要在shell中创建文件夹,可以使用mkdir命令。只需指定新文件夹的名称,确保它不存在,然后就可以开始了。

    例如,要创建一个保存所有图像的目录,只需键入:

    mkdir images/
    mkdir images/
    mkdir images/

    要使用简单命令创建子目录,请使用parent(-p)标志:

    mkdir -p movies/2004/
    mkdir -p movies/2004/
    mkdir -p movies/2004/

    10.man命令

    另一个重要的Linux命令是man。它显示任何其他命令的手册页面(只要有)。

    要查看mkdir命令的手册页,请键入:

    man mkdir
    man mkdir
    man mkdir

    您甚至可以查看 man 命令手册页面:

    man man
    man man
    man man

    man命令手册页面

    man命令手册页面。

    11.touch命令

    touch命令允许您更新指定文件的访问和修改时间。

    例如,我有一个旧文件,上次修改是在4月12日:

    旧日期

    旧日期。

    要将其修改日期更改为当前时间,我们需要使用-m标志:

    touch -m old_file
    touch -m old_file
    touch -m old_file

    现在日期与今天的日期相符(开始编写本文时的日期为8月8日)。

    新日期

    新日期

    尽管如此,大多数情况下,您不会使用touch来修改文件日期,而是创建新的空文件:

    touch new_file_name
    touch new_file_name
    touch new_file_name

    12. chmod 命令

    chmod命令允许您快速更改文件的模式(权限)。它有很多可用的选项。

    文件的基本权限包括:

    • r (只读)
    • w (写入)
    • x (执行)

    chmod最常见的用例之一是使文件可由用户执行。为此,请键入chmod和标志