Unix和Linux常用的命令(不断积累)

这篇具有很好参考价值的文章主要介绍了Unix和Linux常用的命令(不断积累)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

chomd

chomd基本语法

chmod是一个Unix和Linux操作系统中的命令,它用于改变文件或目录的权限。在Linux中,每个文件或目录的权限可以被设定为三个不同的用户级别:文件所有者所有者所在的用户组,以及其他用户

chmod的基本语法如下:

chmod [options] mode file

在这个命令中:

  • options:这是可选参数,主要用来定义命令的行为,例如 -R 选项可以用来递归地改变目录及其子目录的权限。
  • mode:这是你想设置的权限,可以用数字(例如 777)或符号(例如 u+x)表示。
  • file:这是你想改变权限的文件或目录的名称。

chmod命令使用三个数字来表示权限,每个数字代表一个不同的用户组:

  • 第一个数字代表文件所有者的权限。
  • 第二个数字代表同一用户组中的其他用户的权限。
  • 第三个数字代表其他所有用户的权限。

每个数字是三个权限(读、写和执行)的二进制表示的总和:

  • 读权限被表示为4
  • 写权限被表示为2
  • 执行权限被表示为1

因此,权限的数字表示可以从0(无权限)到7(读、写和执行权限)。例如,如果你想给文件所有者全部权限给同一用户组的用户读和执行权限给其他所有用户只给读权限,你可以设置模式为 754

这就是基本的 chmod 命令。记住,改变文件和目录的权限是一项需要谨慎操作的任务,因为不正确的权限设置可能会导致安全问题。

chmod命令的options和mode部分

chmod命令的optionsmode部分是非常重要的。让我们分别详细了解一下:

1. Options

options定义了chmod命令的行为。这里有一些常见的options

  • -R--recursive递归地改变指定目录及其所有子目录和文件的权限。如果没有指定此选项,chmod只会改变给定路径上的单个文件或目录的权限。

  • -f--silent--quiet:不显示错误信息。

  • -v--verbose:运行时提供详细输出。

  • --reference=RFILE:将权限改变为RFILE的权限相同。

2. Mode

mode部分定义了你想要设置的权限。它可以由数字(例如777)或符号(例如u+x)表示。

  • 数值模式:每个权限(读、写、执行)都由一个数字表示:

    • 4代表读取权限。
    • 2代表写入权限。
    • 1代表执行权限。

    这些值相加得到一个三位数,分别代表所有者、组和其他用户的权限。例如,755表示所有者具有读/写/执行权限(7=4+2+1),组和其他用户只有读和执行权限(5=4+1)。

  • 符号模式:这种模式使用字母和特殊符号来定义权限。主要元素如下:

    • ugo分别表示用户(所有者)、组和其他人。

    • +-=分别用于添加权限、删除权限和设置特定权限。

    • rwx分别代表读取、写入和执行权限。

    例如,u+x表示给用户(文件所有者)添加执行权限,g-w表示从组中删除写入权限,o=r表示给其他人设置只读权限。

chmod命令的实例

当然,以下是一些chmod命令的实例:

  1. 将文件(例如 myfile.txt)的权限设置为所有者可读写(6),组内用户可读写(6),其他用户只读(4):
chmod 664 myfile.txt
  1. 递归地更改目录及其子目录的权限。例如,将目录 mydir 及其子目录的权限设置为所有者可读写执行(7),组内用户可读写(6),其他用户只读(4):
chmod -R 764 mydir
  1. 使用符号模式改变权限。比如,给所有者(u)增加(+)执行(x)权限,可以使用以下命令:
chmod u+x myfile.txt
  1. 可以同时更改多个用户组的权限。例如,给所有者和组用户添加执行权限,可以这样写:
chmod u+x,g+x myfile.txt

或者简化为:

chmod +x myfile.txt

这将给所有者,组用户,以及其他用户添加执行权限。

  1. 取消某个用户组的特定权限,例如取消组用户(g)的写(w)权限:
chmod g-w myfile.txt
  1. 设置所有者具有读写执行权限,而其他用户没有任何权限:
chmod 700 myfile.txt
  1. 如果你想移除所有用户对文件(例如,myfile.txt)的所有权限,可以使用以下命令:
chmod 000 myfile.txt
  1. 如果你有一个脚本(例如,script.sh)并希望所有用户都能够执行它,你可以这样设置:
chmod 755 script.sh

这样,所有者有读、写、执行权限,而组用户和其他用户只有读和执行权限。

  1. 如果你想让所有者对文件有所有权限,但其他用户没有任何权限,你可以这样设置:
chmod 700 myfile.txt
  1. 使用符号来给所有者添加写权限:
chmod u+w myfile.txt
  1. 从组用户和其他用户那里移除执行权限:
chmod go-x myfile.txt
  1. 将文件所有者的权限设为读写,组用户的权限设为只读,其他用户无权限:
chmod 640 myfile.txt
  1. 如果你想改变一个目录及其所有子目录和文件的权限,你可以使用-R选项。比如,让所有者有全部权限,组用户和其他用户只有读和执行权限:
chmod -R 755 mydir

pwd

pwd是一个Unix和Linux环境中的命令,它的全称是“print working directory”,用于显示当前工作目录的全路径。

pwd命令中没有提供参数,命令就会输出当前工作目录的路径。比如,如果你首次打开一个新的终端或命令行界面,它可能会显示你的主目录,例如:

$ pwd
/Users/yourusername

如果你改变了当前的工作目录,pwd命令会显示你现在的位置。例如,如果你使用cd命令进入了一个叫做Documents的目录,然后执行pwd命令,它将显示:

$ cd Documents
$ pwd
/Users/yourusername/Documents

这就是pwd命令的基本用法。它是一个非常有用的命令,可以帮助你了解自己在文件系统中的位置。

cat

cat 是一个 Unix 和 Linux 系统中常用的命令,用于查看、创建或者连接文件内容。它的全称是 “concatenate”,意思是连接。

查看文件内容

这是 cat 最基本的用法,例如查看文件 myfile.txt 的内容:

$ cat myfile.txt

它将在命令行窗口输出 myfile.txt 文件的全部内容。

创建新文件

cat 也可以用来创建新文件。例如,你可以创建一个新的文件并将一些文本写入其中:

$ cat > newfile.txt

然后你可以开始输入一些文本。当你完成时,按 Ctrl+D 结束输入,你就会发现已经创建了一个名为 newfile.txt 的文件,文件内容就是你刚才输入的文本。

连接文件内容

cat 命令最初的设计就是为了连接(concatenate)多个文件的内容。例如,你有两个文件,file1.txt 和 file2.txt,你想创建一个新的文件,其中包含了这两个文件的内容,你可以使用以下命令:

$ cat file1.txt file2.txt > combined.txt

现在,combined.txt 文件就包含了 file1.txt 和 file2.txt 的内容。

附加到文件

如果你想把一些内容附加到现有文件的末尾,而不是覆盖它,你可以使用 ‘>>’ 操作符。例如,你想在 file1.txt 的内容后面添加 file2.txt 的内容:

$ cat file2.txt >> file1.txt

现在 file1.txt 文件包含了它原来的内容,后面跟着 file2.txt 的内容。

显示行号

使用 -n 选项可以在输出的每一行前面添加行号,这在查看长文件时非常有用:

$ cat -n myfile.txt

touch

touch是一个常用的Unix和Linux命令,它用于创建新的空文件和更改现有文件或目录的时间戳。下面详细介绍一下这两种用法:

创建新的空文件

要创建一个新的空文件,只需提供你想要创建的文件名作为touch命令的参数。例如,如果你想创建一个名为myfile.txt的新文件,你可以输入:

$ touch myfile.txt

如果文件已经存在,touch命令不会有任何效果。如果文件不存在,touch会创建一个新的空文件。

更改文件或目录的时间戳

touch命令也可以用来更新文件或目录的访问时间和修改时间。当你对文件或目录使用touch命令时,这两个时间戳会被更新为当前时间。

例如,你可以更新myfile.txt文件的时间戳:

$ touch myfile.txt

你还可以同时更改多个文件或目录的时间戳,只需将它们作为参数传递给touch命令:

$ touch file1.txt file2.txt directory1

注意,如果这些文件或目录不存在,touch将为每一个不存在的文件名创建一个新的空文件。

创建带有特定时间戳的文件

你可以使用-t选项来创建一个带有特定时间戳的文件。例如,要创建一个名为myfile.txt的文件,其修改日期设置为2023年1月1日,可以使用如下命令:

$ touch -t 202301011200 myfile.txt

这个命令将创建或修改myfile.txt的时间戳,设置为2023年1月1日的12:00。

touch命令的这些用法可以帮助你在脚本和其他工具中创建和管理文件和目录。

rm

rm命令是Unix和Linux中用于删除文件和目录的基本命令。下面是一些使用rm命令的详细示例:

删除文件

要删除一个文件,只需要将文件名作为rm命令的参数。例如,要删除名为myfile.txt的文件,你可以输入:

$ rm myfile.txt

删除多个文件

如果你想要删除多个文件,可以将所有的文件名一起作为rm命令的参数。例如,要删除file1.txtfile2.txtfile3.txt这三个文件,你可以输入:

$ rm file1.txt file2.txt file3.txt

删除目录

默认情况下,rm命令不会删除目录。如果你试图删除一个目录,它会显示一个错误消息。要删除一个目录,需要使用-r(或--recursive)选项。例如,要删除一个名为mydir的目录,你可以输入:

$ rm -r mydir

这将删除mydir目录及其包含的所有子目录和文件。

强制删除

如果你想要删除文件或目录,并且不想在删除每个文件或目录时都被提示,可以使用-f(或--force)选项。例如,要强制删除mydir目录,你可以输入:

$ rm -rf mydir

这将删除mydir目录及其包含的所有子目录和文件,并且不会显示任何提示。

注意:使用rm命令要小心,因为一旦文件或目录被删除,你就无法恢复它。在使用-r-f选项时,要特别小心,因为这可能会导致删除你不想删除的文件或目录。

cp

cp是Unix和Linux环境中的一个命令,用于复制文件和目录。以下是一些cp命令的详细示例:

复制文件

要复制一个文件,你需要提供源文件的名称以及目标文件的名称。例如,如果你想复制一个名为file1.txt的文件,并将副本命名为file2.txt,你可以使用以下命令:

$ cp file1.txt file2.txt

复制到目录

你还可以将文件复制到另一个目录。例如,如果你想将file1.txt复制到一个名为mydir的目录中,你可以使用以下命令:

$ cp file1.txt mydir

这将创建一个在mydir目录中的file1.txt的副本。

复制目录

要复制一个目录及其所有内容,你需要使用-R-r选项,它代表递归。例如,如果你想复制一个名为dir1的目录,并将副本命名为dir2,你可以使用以下命令:

$ cp -R dir1 dir2

这将创建一个dir2的目录,它将包含dir1目录中的所有文件和子目录。

复制并保留文件属性

要复制文件或目录并保留其原始属性(如所有者、组和权限),你可以使用-p选项。例如,如果你想复制file1.txt并保留其属性,你可以使用以下命令:

$ cp -p file1.txt file2.txt

这就是cp命令的一些常见用法。记住,cp命令总是创建源文件或目录的副本,它不会移动或删除源文件或目录。

mv

mv 是一个在 Unix/Linux 操作系统下的命令,用于移动或重命名文件或目录。以下是一些使用 mv 命令的示例:

  1. 重命名文件:

    如果你想把一个文件从一个名字改为另一个名字,你可以使用 mv 命令。例如,如果你想把文件 oldname.txt 重命名为 newname.txt,你可以输入以下命令:

    mv oldname.txt newname.txt
    

    执行这个命令后,你会发现 oldname.txt 文件已经不存在,而新的 newname.txt 文件已经出现。

  2. 移动文件:

    mv 命令也可以将文件从一个位置移动到另一个位置。例如,如果你想将文件 file.txt 从当前目录移动到 directory1 目录,你可以输入以下命令:

    mv file.txt directory1/
    

    执行这个命令后,文件 file.txt 会从当前目录移动到 directory1 目录。

  3. 移动并重命名文件:

    mv 命令还可以在移动文件的同时重命名文件。例如,如果你想将文件 file.txt 移动到 directory1 目录,并将其重命名为 newname.txt,你可以输入以下命令:

    mv file.txt directory1/newname.txt
    

    执行这个命令后,文件 file.txt 会从当前目录移动到 directory1 目录,并重命名为 newname.txt

请注意,如果目标文件或目录已经存在,mv 命令默认会覆盖目标文件或目录。如果你不希望这样,可以使用 -i(即 --interactive)选项,这样当目标文件存在时,mv 命令会询问你是否覆盖。例如:

mv -i oldname.txt newname.txt

在这种情况下,如果 newname.txt 文件已经存在,mv 命令会询问你是否要覆盖它。


移动和重命名目录与移动和重命名文件的方法相同,都使用 mv 命令。这里是几个示例:

  1. 移动目录:

    如果你想把一个目录从一个位置移动到另一个位置,你可以使用 mv 命令。例如,如果你想把 directory1 从当前位置移动到 directory2(假设 directory2 已经存在),你可以使用以下命令:

    mv directory1 directory2/
    

    这将把 directory1 移动到 directory2 目录下,路径会变成 directory2/directory1

  2. 重命名目录:

    mv 命令也可以用来重命名目录。例如,如果你想把 directory1 重命名为 directory3,你可以使用以下命令:

    mv directory1 directory3
    

    执行这个命令后,directory1 将被重命名为 directory3,原来 directory1 中的所有文件和子目录都会保持不变,只是路径名变成了 directory3

  3. 移动并重命名目录:

    mv 命令可以在移动目录的同时重命名目录。例如,如果你想把 directory1 移动到 directory2 目录下,并将其重命名为 directory3,你可以输入以下命令:

    mv directory1 directory2/directory3
    

    执行这个命令后,directory1 将被移动到 directory2 目录下,并被重命名为 directory3。所以新的路径会变成 directory2/directory3

同样地,如果目标目录已经存在,mv 命令会覆盖它。如果你不希望这样,可以使用 -i(即 --interactive)选项,这样当目标目录存在时,mv 命令会询问你是否覆盖。例如:

mv -i directory1 directory3

在这种情况下,如果 directory3 已经存在,mv 命令会询问你是否要覆盖它。

mkdir

mkdir 是一个 Unix 和 Linux 环境中常用的命令,用于创建新的目录。以下是一些 mkdir 命令的详细示例:

创建新目录

基本的 mkdir 命令是用于创建新目录的。例如,如果你想创建一个名为 mydir 的新目录,你可以使用以下命令:

$ mkdir mydir

这将在当前工作目录下创建一个名为 mydir 的新目录。

创建多个目录

你也可以一次创建多个目录。例如,如果你想创建两个名为 dir1dir2 的目录,你可以使用以下命令:

$ mkdir dir1 dir2

这将在当前工作目录下创建两个新目录,dir1dir2

创建嵌套目录

如果你想一次创建多级目录(即目录的目录),你可以使用 -p(或 --parents)选项。例如,你可以创建一个名为 dir1 的目录,它包含一个名为 dir2 的子目录,dir2 又包含一个名为 dir3 的子目录:

$ mkdir -p dir1/dir2/dir3

如果这些目录已经存在,mkdir -p 不会显示错误,而是保持原样。

设置目录权限

在创建目录的同时,你也可以设置目录的权限。例如,如果你想创建一个名为 mydir 的新目录,并设置其权限为 755(即所有者可以读写执行,组可以读执行,其他人可以读执行),你可以使用以下命令:

$ mkdir -m 755 mydir

以上就是 mkdir 命令的一些基本用法。使用这个命令,你可以很容易地在你的文件系统中创建新的目录和子目录。

关于 ./ …/

解析

当在命令行中使用 ./../ 时,它们用于表示文件或目录的相对路径。

  1. ./:表示当前目录。例如,如果你位于 /home/user 目录中,那么 ./file.txt 就表示当前目录下的 “file.txt” 文件。

  2. ../:表示上一级目录。例如,如果你位于 /home/user/dir 目录中,那么 ../file.txt 就表示上一级目录中的 “file.txt” 文件,即 /home/user/file.txt

实际例子

当你在命令行中进行文件和目录操作时,以下是一些实际使用 ./../ 的例子:

  1. 执行当前目录下的可执行文件:假设你有一个名为 script.sh 的可执行脚本文件,并且你当前位于该脚本所在的目录中,你可以使用 ./script.sh 来运行它。

  2. 复制文件到上一级目录:假设你当前位于 /home/user/documents 目录中,而你想将一个名为 report.txt 的文件复制到 /home/user 目录中,你可以使用 cp report.txt ../ 命令。

  3. 导航到上一级目录并列出其中的文件:如果你位于 /home/user/documents 目录中,你可以使用 cd ../ 命令切换到 /home/user 目录,并使用 ls 命令列出其中的文件。

  4. 删除当前目录下的一个子目录:假设你的当前目录为 /home/user,而你想删除名为 temp 的子目录,你可以使用 rm -r ./temp 命令来删除它。

mkdir …/data 命令

这条命令 mkdir ../data 是用于在当前目录的上一级目录中创建一个名为 “data” 的新目录。mkdir 是 “make directory” 的缩写,表示创建目录的意思。而 ../ 是用于表示当前目录的上一级目录的路径。所以,执行这条命令后,会在当前目录的上一级目录中创建一个名为 “data” 的新目录。

…/data/lending-club-loan-data/loan.csv

这条命令 ../data/lending-club-loan-data/loan.csv 是一个文件路径,指向名为 “loan.csv” 的文件。它位于当前目录的上一级目录的 “data” 目录中的 “lending-club-loan-data” 子目录内。

通过使用 .. 表示上一级目录,然后按照路径层次结构指定目录和文件名称,这个命令可以定位到所需的文件。这样,可以在文件系统中访问和操作 “loan.csv” 文件。文章来源地址https://www.toymoban.com/news/detail-495469.html

到了这里,关于Unix和Linux常用的命令(不断积累)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux基本常用命令大全(二)

    5.1 grep grep命令是一种强大的文本搜索工具 使用实例: 5.2 find find命令在目录结构中搜索文件,并对搜索结果执行指定的操作。 find 默认搜索当前目录及其子目录,并且不过滤任何结果(也就是返回所有文件),将它们全都显示在屏幕上。 使用实例: 5.3 locate locate 让使用者可

    2024年01月23日
    浏览(40)
  • 【Linux】常用的基本命令指令②

    前言:前面我们学习了Linux的部分指令,今天我们将接着上次的部分继续将Linux剩余的基本指令. 💖 博主CSDN主页:卫卫卫的个人主页 💞 👉 专栏分类:Linux的深度刨析 👈 💯代码仓库:卫卫周大胖的学习日记💫 💪关注博主和博主一起学习!一起努力! head 与 tail 就像它的名字一

    2024年02月03日
    浏览(37)
  • 三、Linux基本使用和常用命令

    1、登录Linux操作系统方式 1.图形化界面 基于 x window System 显示框架开发 由KDE(类似于苹果系统)、GNOME.v.3.0 提供图形化桌面环境 2.虚拟控制台 文本方式(Ctrl + Alt + F3)   3.Web网页登录 前提是需要打开网页控制台,由 cock.pit 程序提供 ‘’‘ #将cockpit控制台设置为开机启动且

    2024年02月05日
    浏览(40)
  • UNIX常用命令(C站最全,一文通关)

    unix常见命令列举如下,除了看还要会用: 命令 描述 ls 列出目录下的文件 cd 切换目录 pwd 显示当前目录 mkdir 创建目录 rm 删除文件或目录 rmdir 删除空目录 cp 复制文件或目录 mv 移动文件或目录,或重命名 cat 显示文件内容 less 分页显示文件内容 head/tail 显示文件头部/尾部内容

    2024年02月03日
    浏览(37)
  • Linux最常用的15个基本命令

    目录 Linux基本命令  命令1:ls (查看指定目录中有哪些内容) ls / 相当于查看根目录中的内容,相当于查看我的电脑  ls -l(小写l,或者使用ll)详细查看目录下所有内容 ls /usr/lib(ls+目录名称)  命令2:pwd(显示用户在哪个目录下(绝对路径))  命令3:cd+目录名称(将

    2024年02月02日
    浏览(37)
  • Django如何删除数据库表中的数据【不断积累】

    这篇博客积累Django的数据库常用删除方法。 假设有表模型Author定义如下: Django 默认为每个模型添加一个名为 id 的自增主键列,用于唯一标识每条记录。因此,可以使用该 id 值来删除指定的记录。 下面是使用 id 值删除记录的示例代码: 在这个示例中,我们首先指定要删除

    2024年02月13日
    浏览(42)
  • Linux工作原理2常用基本命令和目录层次结构

    本章是对本书中你将遇到的Unix命令和工具的指南。 为什么是Unix命令?这不是一本关于Linux如何工作的书吗?当然是的,但Linux在本质上是一种Unix风格。在本章中,你会看到Unix这个词,而不是Linux,因为你可以把你学到的东西直接带到BSD和其他Unix风味的系统中去。我试图避免

    2024年02月06日
    浏览(36)
  • Vim 是一款强大的文本编辑器,广泛用于 Linux 和其他 Unix 系统。以下是 Vim 的一些基本用法

    Vim 是一款强大的文本编辑器,广泛用于 Linux 和其他 Unix 系统。以下是 Vim 的一些基本用法: 打开文件: 基本移动: 使用箭头键或 h , j , k , l 分别向左、下、上、右移动。 Ctrl + f : 向前翻页。 Ctrl + b : 向后翻页。 gg : 移动到文件开头。 G : 移动到文件末尾。 编辑文本: i : 进

    2024年01月17日
    浏览(37)
  • MongoDB基本常用命令(一)

    存放文章评论的数据存放到 MongoDB 中,数据结构参考如下: 数据库: articledb 专栏文章评论 comment 字段名称 字段含义 字段类型 备注 _id ID ObjectId或String Mongo的主键的字段 articleid 文章ID String content 评论内容 String userid 评论人ID String nickname 评论人昵称 String createdatetime 评论的日

    2024年01月24日
    浏览(22)
  • docker的常用基本命令

    1 ,启动docker systemctl start docker 2 ,关闭docker systemctl stop docker  3 ,重启docker systemctl restart docker  4 ,设置docker开机自启动 systemctl enable docker 5 , 查看docker运行状态(显示绿色代表正常启动) systemctl status docker  1,忘记了某些命令的使用可以查看 docker --help 演示:假如我们启

    2023年04月11日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包