linux具体命令(一)

1. cd

CD命令是Linux和类Unix操作系统中非常常用的一个命令,它的全称是“change directory”,用于改变当前的工作目录。用户可以通过这个命令进入到不同的目录中,进行文件操作或是执行其他任务。
以下是CD命令的一些基本用法:

  1. 进入到一个绝对路径目录:
    cd /path/to/directory
    
    这里,/path/to/directory是你要切换到的目的目录的绝对路径。
  2. 进入到一个相对路径目录:
    cd relative/path
    
    相对路径是相对于当前工作目录的路径。
  3. 回到上一级目录:
    cd ..
    
    这个命令会将当前目录退回到它的上一级目录。
  4. 回到上两级目录:
    cd ../..
    
    通过这种方式可以逐级返回到更高的目录。
  5. 进入家目录:
    cd ~
    
    这个命令等同于cd /home/username,它会将用户带到其家目录。
  6. 快速切换到另一个终端打开的目录:
    cd -
    
    这个命令可以切换到之前另一个终端打开的目录。
  7. 查看当前目录:
    pwd
    
    这个命令可以显示当前目录的绝对路径。
    在实际使用中,我们经常会结合使用pwd命令来查看当前目录,然后根据需要使用cd命令进行切换。例如,如果你想要进入一个特定的目录,可以首先用pwd查看这个目录的路径,然后输入cd命令后跟路径,即可进入该目录。
    另外,值得注意的是,在执行cd命令时,路径后面通常需要跟一个目录名,而不是文件名。如果不跟任何东西,cd命令会尝试切换到当前用户的家园目录。
    对于一些特定的系统,如Windows,可能需要使用cd命令加上盘符来改变当前盘符,比如:
cd E:

这将会将当前工作目录切换到E盘。在Unix类系统中,cd命令不会改变盘符,仅改变当前目录。如果需要改变盘符,需要使用mountumount命令,或者在Windows中使用d:这样的盘符切换。

2.pwd

pwd是Linux和类Unix操作系统中的一个命令,它的全称是"print working directory",用于打印当前工作目录的绝对路径。
当你在终端中输入pwd并按下回车键时,pwd命令会显示从根目录开始的完整路径,直到当前工作目录。
例如,如果你的当前工作目录是/home/username/documents,那么执行pwd命令后,终端会输出/home/username/documents
pwd命令在切换目录时非常有用,特别是在你不知道当前目录的绝对路径时。通过查看当前目录的绝对路径,你可以更准确地输入cd命令来切换到其他目录。

3. 相对路径与绝对路径

Linux中的相对路径和绝对路径是用来表示文件或目录位置的两种方式。

  1. 绝对路径:从文件系统的根目录(/)开始,逐级列出所有的目录,直到目标文件或目录。例如,如果一个文件位于"/home/user/documents"目录下,那么它的绝对路径就是"/home/user/documents"。
  2. 相对路径:从当前工作目录开始,逐级列出到达目标文件或目录所需的目录。例如,如果一个文件位于"/home/user/documents"目录下,而当前工作目录是"/home/user",那么它的相对路径就是"…/documents"。
    总的来说,绝对路径和相对路径的主要区别在于它们的参考点不同。绝对路径以文件系统的根目录为参考点,而相对路径以当前工作目录为参考点。在实际操作中,你可以根据需要选择使用绝对路径或相对路径。

4.mkdir

mkdir 命令在Linux和类Unix操作系统中用于创建新目录。当您在命令行中使用 mkdir 命令时,您可以指定要创建的目录的名称,如果该目录的上级目录不存在,mkdir 将会创建这个上级目录,然后创建新目录。
基本语法如下:

mkdir [选项] 目录名称

这里有几个有用的选项:

  • -m--mode:设置新创建目录的权限,这会覆盖默认的umask设置。
  • -p--parents:如果指定目录的上级目录不存在,mkdir会自动创建这些上级目录。
  • -v--verbose:在创建目录时显示详细信息。
  • --help:显示帮助信息。
  • --version:显示版本信息。
    例如,如果您想在当前目录下创建一个名为 test 的子目录,可以使用以下命令:
mkdir test

如果上级目录不存在,mkdir 会报错,此时您可以使用 -p 选项一并创建上级目录:

mkdir -p test

如果您想要递归创建多个目录,可以这样:

mkdir -p test/test2/test3

这里,如果 test 目录存在,mkdir 会继续创建 test2test3 目录。如果任何一个目录的上级目录不存在,mkdir 会先创建上级目录,然后创建该目录。
在使用 mkdir 命令时,应确保新创建的目录名称不与其父目录中的文件重名,尤其是在不同操作系统和文件系统中,目录名称和文件名称是区分大小写的。
总的来说,mkdir 命令是管理文件系统时非常有用的工具,它帮助用户更有效地组织文件和目录。

5.touch

在 Linux 系统中,touch 命令用于修改文件的访问时间和修改时间。这个命令非常有用,当你需要创建一个新文件,或者更新文件的时间戳时。
基本的 touch 命令语法如下:

touch [选项] [文件名]

以下是 touch 命令的一些常用选项:

  • -c--create:创建一个新文件,如果文件已经存在,则不进行任何操作。
  • -m--modify:只设置文件的修改时间,不创建文件。
  • -a--append:追加内容到文件末尾,如果文件不存在,则创建文件。
  • -d--date:指定一个日期和时间,用于设置文件的访问和修改时间。
  • -r--reference:使用参考文件的日期和时间来设置当前文件的日期和时间。
  • -t:与 --date 一起使用,指定日期和时间(格式为 YYYYMMDDHHMM)。
    示例:
  1. 创建一个新文件:
touch myfile.txt
  1. 创建一个新文件,并设置修改时间为当前时间:
touch -m myfile.txt
  1. 仅修改文件的访问时间:
touch -a myfile.txt
  1. 设置文件的访问和修改时间为特定日期和时间:
touch -d "2023-01-01 12:00:00" myfile.txt
  1. 使用参考文件的日期和时间来设置当前文件的日期和时间:
touch -r referencefile.txt myfile.txt

请注意,touch 命令的行为可能会根据你使用的 Linux 发行版和 utime 系统的实现而有所不同。在某些系统上,touch 命令可能只设置修改时间,而不影响访问时间,这种情况下,你可以使用 date 命令来设置访问时间。

6.cat

在 Linux 系统中,cat 命令是一个非常有用的文本处理工具,它用于查看、创建、编辑和合并文件内容。cat 命令的基本语法如下:

cat [选项] [文件名]...

以下是 cat 命令的一些常用选项和功能:

  • -a--append:追加内容到文件的末尾。
  • -b--number:对输出的每一行进行编号。
  • -c--color:以颜色编码显示文本。
  • -d--directory:显示目录内容。
  • -e:启用 Emacs 风格的编辑模式。
  • -n--number:不带 -b 的情况下,对输出的每一行进行编号。
  • -s--squeeze:在合并文件时,移除重复的行。
  • -t:与 -b 一起使用,对输出的每一行进行编号,并且不显示换行符。
  • -v--verbose:显示详细信息。
    示例:
  1. 查看文件内容:
cat myfile.txt
  1. 创建一个新文件并写入内容:
cat > myfile.txt
  1. 追加内容到文件末尾:
cat -a myfile.txt
  1. 以颜色编码显示文本:
cat -c myfile.txt
  1. 合并多个文件并显示:
cat file1.txt file2.txt > combined.txt
  1. 对文件内容进行编号:
cat -n myfile.txt
  1. 显示目录内容:
cat -d /path/to/directory

请注意,cat 命令在处理大文件时可能会有一些性能问题,因为它是逐行读取并显示文件的。在处理大文件时,你可能需要考虑使用 morelessgrep 等命令来提高可读性。

7.more

在 Linux 系统中,more 命令用于分页显示文本文件的内容。它可以让你一次只查看文件的一部分,而不是一次性显示整个文件,这对于处理大文件非常有用。
more 命令的基本语法如下:

more [选项] [文件名]

以下是 more 命令的一些常用选项:

  • -f--forward:默认行为,显示文件的内容。
  • -b--backward:从文件末尾开始反向显示内容。
  • -d--directory:显示目录内容。
  • -h--help:显示帮助信息。
  • -n--lines:指定每次显示的行数。
  • -s--silent:静默模式,不显示翻页提示。
  • -t--tail:只显示文件的最后部分。
  • -v--version:显示版本信息。
    示例:
  1. 查看文件内容,一次显示一页:
more myfile.txt
  1. 从文件末尾开始反向显示内容:
more -b myfile.txt
  1. 显示文件的最后 10 行:
more -n 10 myfile.txt
  1. 静默模式下显示文件内容,不显示翻页提示:
more -s myfile.txt
  1. 只显示目录的文件列表,而不显示子目录的内容:
more -d /path/to/directory

请注意,more 命令默认情况下会一次显示文件的一页内容,但你可以通过按下 Space 键来查看更多内容。如果你想要更精细地控制显示的行数,可以使用 -n 选项。此外,more 命令也可以与其他命令结合使用,例如 grep,以过滤和分页显示文件内容。

8.cp

在 Linux 系统中,cp 命令用于复制文件或目录。以下是 cp 命令的基本语法:

cp [选项] 源文件 目标文件

或者,如果是要复制目录:

cp [选项] 源目录 目标目录

以下是 cp 命令的一些常用选项:

  • -a--archive:归档模式,复制时保持符号链接、文件权限和时间戳。
  • -b--backup:在覆盖文件之前备份原始文件。
  • -c--config:在复制时保留配置文件。
  • -d--directory:如果源是目录,复制目录及其中所有文件。
  • -f--force:强制覆盖目标文件。
  • -i--interactive:交互式模式,覆盖文件前会提示确认。
  • -l--link:创建硬链接,而不是复制文件。
  • -n--no-clobber:不覆盖已存在的目标文件。
  • -p--preserve:保留源文件的权限和所有权信息。
  • -r--recursive:递归复制目录。
  • -s--symbolic:创建符号链接,而不是硬链接。
  • -t--target-directory:指定目标目录。
  • -u--update:在复制时更新目标文件,仅复制改变的部分。
  • -v--verbose:详细模式,显示复制过程中的详细信息。
    示例:
  1. 复制文件 file1.txtfile2.txt
cp file1.txt file2.txt
  1. 复制目录 directory1directory2
cp -r directory1 directory2
  1. 复制 directory1 中的所有文件到 directory2,并保持目录结构:
cp -r directory1/* directory2/
  1. 复制 file1.txtdirectory2,并在覆盖前进行交互式确认:
cp -i file1.txt directory2/
  1. 复制 file1.txtdirectory2/file2.txt,并保持文件名:
cp file1.txt directory2/file2.txt

请注意,如果目标文件或目录不存在,cp 命令会创建它。如果目标文件已存在,使用 -f 选项会覆盖它,而不使用 -i 选项则不会提示确认。

9.which

which 命令在 Linux 系统中用于查找可执行文件或脚本的绝对路径。它会搜索环境变量 PATH 指定的目录,并返回第一个匹配的绝对路径。如果命令不存在,which 将返回一个空结果。
which 命令的基本语法如下:

which [选项] [文件名]

其中,文件名是你要查找的命令或脚本的名称。
常见的 which 命令选项包括:

  • -a--all:显示所有匹配的路径,而不仅仅是第一个找到的。
  • -n:显示匹配文件的长度,而不包括路径。
  • -p:与 -n 类似,但包括路径。
  • -w:设置输出时栏位的宽度。
  • -V:显示命令版本信息。
    例如,如果你想查找 bash 命令的绝对路径,你可以使用以下命令:
which bash

如果 bash 命令在 PATH 中,which 将输出它的绝对路径,例如 /bin/bash
请注意,which 命令查找的是可执行文件,而不是所有的文件。如果你想查找某个脚本文件(例如 .sh 文件),你可能需要使用其他命令,如 findlocate

10.find

Linux系统中的find命令是一个非常强大的文件搜索工具。其主要作用是在指定的目录中搜索满足一定条件的文件,并列出这些文件的路径。这个命令在系统管理和日常使用中非常实用,可以帮助用户快速定位文件。

基本语法

find命令的基本语法如下:

find [path] [expression]
  • path:指定搜索的起始目录。如果省略该参数,默认从当前目录开始搜索。
  • expression:由一系列选项组成的条件表达式,用于定义搜索文件需要满足的条件。

常用选项

find命令提供了丰富的选项,可以按照文件名、类型、大小、修改时间等多种标准来查找文件。以下是一些常用的选项:

  • -name:按照文件名搜索。
  • -type:按照文件类型搜索。
  • -size:按照文件大小搜索。
  • -mtime:按照文件修改时间搜索。
  • -exec:对匹配的文件执行指定的命令。
  • -user:按照文件的所有者搜索。
  • -group:按照文件所属的组搜索。
  • -perm:按照文件权限搜索。

高级用法

  • -and-or-not:逻辑运算符,用于组合复杂的搜索条件。
  • -prune:跳过某些目录。
  • -follow:跟随符号链接搜索实际文件。
  • -xargs:将搜索结果传递给其他命令。

示例

  1. 在当前目录及子目录中查找所有.txt后缀的文件:
    find . -name "*.txt"
    
  2. /etc目录中查找所有类型为普通文件且大小大于10KB的文件:
    find /etc -type f -size +10k
    
  3. 查找当前目录下所有修改时间在最近7天内的文件:
    find . -mtime -7
    
  4. 查找所有属于用户root的文件:
    find / -user root
    
  5. 查找权限为644的文件:
    find / -perm -o=644
    

注意事项

  • 使用find命令时,要谨慎指定搜索路径,避免搜索范围过大,以免影响系统性能。
  • 搜索结果中,文件名是区分大小写的。
  • 符号链接文件会被搜索到,但它们指向的实际文件才会被检查。
    find命令是Linux用户和系统管理员必须掌握的实用工具之一,通过组合不同的选项,可以实现复杂的文件查找需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/209706.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

特殊进程之守护进程

文章目录 1、守护进程的概念2、如何查看守护进程3、编写守护进程的步骤3.1 创建子进程,父进程退出3.2 在子进程中创建新会话3.3 改变当前工作目录3.4 重设文件权限掩码3.5 关闭不需要的文件描述符3.6 某些特殊的守护进程打开/dev/null 4、守护进程代码示例 1、守护进…

[UNILM]论文实现:Unified Language Model Pre-training for Natural Language.........

文章目录 一、完整代码二、论文解读2.1 介绍2.2 架构2.3 输入端2.4 结果 三、过程实现四、整体总结 论文:Unified Language Model Pre-training for Natural Language Understanding and Generation 作者:Li Dong, Nan Yang, Wenhui Wang, Furu Wei, Xia…

js new 原理

mdn new new 调用函数时,该函数将被用作构造函数 类只能用 new 运算符实例化 不使用 new 调用一个类将抛出 TypeError。 过程 new Foo(…) 执行时: 创建一个空的简单 JavaScript 对象。 为方便起见,我们称之为 newInstance。 如果构造函数…

华为OD机试真题-执行任务赚积分-2023年OD统一考试(C卷)

题目描述: 现有N个任务需要处理,同一时间只能处理一个任务,处理每个任务所需要的时间固定为1。 每个任务都有最晚处理时间限制和积分值,在最晚处理时间点之前处理完成任务才可获得对应的积分奖励。 可用于处理任务的时间有限,请问在有限的时间内,可获得的最多积分。 输入…

《LeetCode力扣练习》代码随想录——字符串(替换数字---Java)

《LeetCode力扣练习》代码随想录——字符串(替换数字—Java) 刷题思路来源于 代码随想录 54. 替换数字 受制于语言限制,很普通的解法 import java.util.Scanner; class Main {public static void main(String[] args) {Scanner innew Scanner…

MyBatis--07--启动过程分析、SqlSession安全问题、拦截器

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 谈谈MyBatis的启动过程具体的操作过程如下:实现测试类,并测试SqlSessionFactorySqlSession SqlSession有数据安全问题?在MyBatis中,SqlSess…

vuex如何存储数据、获取数据、以及数据的持久化

前提必须已经在vue中安装了vuex插件不然无法使用,不知道怎么创建vue和安装vuex的可以看这个视频,node.js版本最好16以上不然可能会安装失败:30分钟学会Vue之VueRouter&Vuex 趁着暑假掌握一门技能 大学生前端实习毕业设计必备技能_哔哩哔哩…

好代码资源网整站打包代码(包含了最新数据),集成了深度二开的ripro主题,非常适合做资源网站创业用

好代码资源网是基于wordpress开发的一个资源分享类网站,在开发者圈子里还算小有名气,这里分享婴整站打包代码(包含了最新数据)。网站本身集成了深度二开的ripro主题,非常适合做资源网站创业用。 资源下载类网站目前还…

Button背景颜色改不了,一直是默认的紫色

使用android.widget.Button <android.widget.Buttonandroid:layout_width"wrap_content"android:layout_height"wrap_content"android:onClick"doClick"android:text"这是一个按钮"android:textColor"color/black"androi…

kubesphere安装后启用DevOps

官方文档&#xff1a;KubeSphere DevOps 系统 1、集群管理---定制资源定义 进入目录&#xff1a;集群管理---定制资源定义搜索&#xff1a;clusterconfiguration 点击 ks-installer 右侧的 &#xff0c;选择编辑 YAML 在该 YAML 文件中&#xff0c;搜索 devops&#xff0c;…

力扣98. 验证二叉搜索树

深度优先遍历 思路&#xff1a; 根据二叉搜索树特性&#xff0c;通过中序遍历得到有序序列&#xff0c;验证序列是否有序来判断&#xff1b;中序遍历使用栈通过深度优先遍历&#xff1b; /*** Definition for a binary tree node.* struct TreeNode {* int val;* Tre…

No CUDA GPUs are available

文章目录 前言尝试方法一、尝试方法一二、尝试方法二 总结 前言 之前用服务器跑的时候&#xff0c;发现是可以跑的。但当有其他人一同使用的时候&#xff0c;就会抛出&#xff1a;No CUDA GPUs are available&#xff0c;这个时候我尝试了以下两种方式解决&#xff0c;后面终于…

一到冬天,助听器出现声音小、无声、时有时无……

冬天是一个寒冷干燥的季节&#xff0c;对于助听器的使用者来说&#xff0c;也是一个需要特别注意保养的季节。助听器是高精密的电子产品&#xff0c;如果不注意保养&#xff0c;可能会出现声音小、无声、时有时无等故障&#xff0c;影响听力康复的效果。那么&#xff0c;冬天我…

C++中string类的使用

目录 一.string类 1.1为什么学习string类&#xff1f; 1.2.标准库中的string类 二.string对象的元素访问 2.1.1使用operator[]与at实现访问 2.1.2正向迭代器访问 2.1.3反向迭代器访问 2.1.4const正向迭代器&#xff08;不能修改&#xff09; 2.1.5const反向迭代器&#…

计算机网络知识点合集【王道计算机考研】

学习的最大理由是想摆脱平庸&#xff0c;早一天就多一份人生的精彩&#xff1b;迟一天就多一天平庸的困扰。各位小伙伴&#xff0c;如果您&#xff1a; 想系统/深入学习某技术知识点… 一个人摸索学习很难坚持&#xff0c;想组团高效学习… 想写博客但无从下手&#xff0c;急需…

维护真实时间:应对系统时间篡改的技巧

引言 在App使用中&#xff0c;由于系统时间用户可以随意更改&#xff0c;在某些特殊情况下会导致获取到的系统时间不正确问题。本篇代码使用dart语言进行相关描述。 1.问题分析&#xff1a; 手机系统时间 ≠ 真实时间&#xff0c;当我们做一些需要对时间精度和准确性要求较高的…

SQL命令---修改数据库的编码

介绍 使用sql命令修改数据库的编码&#xff0c;修改为utf8mb4编码。 命令 alter database 数据库名称 default character set utf8mb4;

垃圾收集算法和各种垃圾收集器的实现

深入理解Jvm虚拟机第三章 二、对象已死&#xff1f;3.2.1 引用计数算法3.2.2 可达性分析算法3.2.3 再谈引用3.2.4 生存还是死亡3.2.5 回收方法区 三、垃圾收集算法3.3.1 分代收集理论3.3.2 标记-清除算法3.3.3 标记-复制算法3.3.4 标记-整理算法 四、HotSpot的算法细节实现3.4.…

单片机中的printf思考

问题: 1. printf自带的库编译出来的大小比较大(flash吃紧) 2. printf是一个不定长参数, 意味着函数无法知道传入的长度. 解决这个问题有2中方法:1.设置足够大小的数组作为参数存储; 2. 使用动态内存分配的方式来做(应该使用的是这个方式).(内存吃紧) 问题解释: 1. 之前写裸…

C# WPF上位机开发(串口界面设计)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 如果只是把上位机看成是纯软件开发&#xff0c;本身不和硬件打交道的话&#xff0c;那么这就把上位机的操作范围给限定死了。事实上&#xff0c;上…