专栏首页Web项目聚集地Linux养成计划(九)

Linux养成计划(九)

作者 | 王久一

分类 | Linux

本文章介绍基本的文件操作的命令,命令较多但是非常容易理解,前几篇关于Linux基础的文章可以关注此订阅号,点击底部菜单栏「技术文章」获取。话不多说,咱们开始。

pwd 指令

  • pwd 命令:显示当前工作目录中的绝对路径

如:pwd

ls 指令

基本语法

  • ls [参数] [目录或文件](列出此目录的文件)

常用参数

  • -a :显示当前目录所有文件和目录,包括隐藏文件
  • -l :以列表方式显示信息
  • -h:人性化显示

cd 命令

基本语法

  • cd [选项] (切换到指定目录)

常用选项

  • cd ~ 或者 cd:回到自己家目录
  • cd .. 回到上一级目录

我们在root目录下,如何进入home目录

  • 绝对路径:cd /home从根目录开始定位
  • 想到路径:cd ../home 当前工作目录开始定位到目标目录

mkdir 命令

基本语法

  • mkdir [选项] (用于创建目录)

常用选项

  • -p: 创建多级目录

应用案例

  • 案例一:mkdir /home/jujidi home目录下创建一个聚集地目录
  • 案例二:mkdir -p /home/wang/web 创建多级目录(wang和web本来都没有)

rmdir 命令

基本语法

  • rmdir [选项] 要删除的目录
  • rmdir 无法直接删除非空目录,需要添加 -rf 参数

使用方式

  • rmdir /home/jujidi 删除home下的jujidi空目录

使用细节

  • 删除非空目录:mkdir -rf /home/web 删除home目录下web非空目录,web目录不是空目录

touch 命令

基本语法

  • touch 文件名(功能:常见空文件)

使用方式

  • touch web.txt 创建web.txt空文件

扩展

  • touch web1.txt web2.txt 一次创建两个文件

cp 命令

基本语法

  • cp [选项] 源文件 目标位置(功能:拷贝文件到指定目录)

常用选项

  • -r 递归复制整个文件夹

应用案例

  • cp /home/aaa.txt /home/bbbhome目录下的aaa.txt文件复制到home目录下bbb文件夹下
  • cp -r /home/test /home/bbb 把home下方的test目录递归拷贝到bbb目录,test是一个目录并且里面的文件都会递归拷贝
  • \cp -r /home/test /home/bbb 如果test目录和bbb目录有相同的文件,添加\cp可以强行覆盖

rm 命令

基本语法

  • rm [选项] 要删除的文件或目录(功能:移除文件或目录)

常用选项

  • -r :递归删除整个文件夹
  • -f:强制删除不提示

应用案例

  • rm aaa.txt 删除aaa.txt文件(会提示)
  • rm -f bbb.txt 删除bbb.txt文件(不会提示)
  • rm -rf /bbb 删除bbb目录,主要bbb是目录

mv 命令

基本语法

  • mv 旧文件名 新文件名(功能:重命名)
  • mv 待移动文件 目标文件夹(功能:移动文件)
  • 当你使用时,如果旧文件名对应的文件就在当前目录,功能是重命名

应用案例

案例一:把aaa.txt 重命名为 bbb.txt

对于上方的命令我们可以这样想,首先它打算把aaa.txt移动到当前目录去,但是当前目录有aaa.txt,所以就判定为重命名。

案例二:把/root目录下bbb.txt移动到/home目录下

对于上方的命令我们可以这样想,首先它打算把bbb.txt移动到home目录去,但是home目录没有bbb.txt,所以就判定为移动,如果有此文件就是重命名。

cat 命令

基本语法

  • cat [选项] 要查看的文件(功能:查看文件内容,只读方式)

常用选项

  • -n:显示行号

应用案例

  • cat -n /etc/profile 查看profile文件,并显示行号,这个时候把文件全部打开并直接到文末。
  • cat -n /etc/profile | more 查看profile文件,显示行号并分页显示,按空格键翻页。

more 命令

基本语法

  • more 要查看的文件
  • more指令是基 于vi编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容,more指令有若干快捷键。

快捷键

应用案例

  • more /etc/profile 查看文件profile并分页显示

less 命令

基本语法

  • less 要查看的文件
  • less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端,优点是:不是将整个文件加载之后才显示,而是根据显示需要加载内容,显示大型文件效率较高。

快捷键

应用案例

  • less 很大的小说.txt 查看文件 很大的小说.txt 文件,并且分页显示

> 指令 和 >> 指令

基本介绍

  • > 输出重定向(会将原来文件覆盖)
  • >> 追加(不会覆盖,追加到末尾)

基本语法

  • ls -l > 文件(列表内容写入文件中,覆盖写)
  • ls -al >>文件(列表内容追加到文件的末尾,不覆盖)
  • cat 文件1 > 文件2 (将文件1内容覆盖到文件2)

应用案例

  • ls -l > a.txt 把 ls -l 命令后显示的内容写入文件a.txt,a.txt不存在会自动创建,若存在会覆盖内容
  • ls -al >> b.txt 把 ls -l 命令后显示的内容追加文件b.txt,不是覆盖是追加
  • cat a.txt > c.txt 把文件a.txt文件内容写入c.txt文件,c.txt不存在会自动创建,若存在会覆盖内容
  • echo "聚集地" >> c.txt 把聚集地三个字追加到c.txt文件中
  • ls -l /home/ > /home/info.txt 把home目录下的文件列表写入到 /home/info.txt中
  • cal >> /home/mycal 把当前日历信息追加到mycal中

echo 命令

基本语法

  • echo [选项] [输出内容](功能:echo输出内容到控制台)

应用案例

  • echo $PATH 输出当前环境变量的路径
  • echo "jujidi" 输入jujidi 文本

head 命令

基本语法

  • head 文件(功能:查看文件的头10行内容)
  • head -n 5 文件(功能:查看文件头5行内容)

应用案例

  • head -n 5 /etc/profile 显示profile文件的头5行

tail 命令

基本语法

  • tail 文件(功能:查看文件的后10行内容)
  • tail -n 5 文件(功能:查看文件后5行内容)
  • tail -f 文件(功能:时事跟踪文档的所有更新,工作中常用)

应用案例

  • tail -n 5 /etc/profile 显示profile文件的后5行
  • tail -f file.txt 用来时事监控文件file.txt,我们打开另一个终端偷偷的往file.txt追加东西时,时事监控就会立马看到变化。

ln 命令

基本语法

  • ln -s [原文件或目录] [软连接名](功能:给原文件创建一个软连接
  • 相当于Windows下的快捷方式

应用案例

  • ln -s root toRoot 在home目录下创建一个软链接文件,指向root目录。使用 cd toRoot/ 命令时,其实是切换到root目录下。
  • rm -rf toRoot 删除软连接toRoot

history 命令

基本语法

  • history (功能:查看已经执行过的历史指令)

应用案例

  • history 显示所有的历史指令

  • history 10 显示10条最近的10条历史指令
  • !48 执行历史指令是编号是48的指令

date 指令

基本语法

  • date (功能:显示当前时间)
  • date +%Y (功能:显示当前年份)
  • date +%m (功能:显示当前月份)
  • date +%d (功能:显示当前是哪一天)
  • date "+%Y-%m-%d %H:%M:%S"(功能:显示年月日时分秒)
  • date -s 字符串时间 (功能:设置系统时间)

cal 命令

基本语法

  • cal [选项] (功能:不加选项,显示本月日历)

本文分享自微信公众号 - Web项目聚集地(web_resource)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-02-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux养成计划(十一)

    组的概念在Linux中非常重要,我们以前学习过组相关的简单命名,今天讲解一些组管理。在Linux中的每一个用户必须属于一个组,不可以独立于组外。Linux中的每...

    用户1093975
  • 我珍藏的神兵利器(软件篇)

    快速启动应用+文件搜索+各种实用插件(计算器、翻译、网页快速访问等)。我的最爱,没有它我几乎半残。

    用户1093975
  • Apache-Commons家族的八兄弟(下)

    Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动。篇幅很长所以拆分为两篇。

    用户1093975
  • 友元函数和友元类

    友元提供了不同类的成员函数之间、类的成员函数与一般函数之间进行数据共享的机制。通过友元,一个不同函数或另一个类中的成员函数可以访问类中的私有成员和保护成员。c+...

    chenjx85
  • HTML DOM

    DOM 文档对象模型。 节点 元素 即 标签 Element 1 文本 <a>文本</a> Text 3 属性 <a href=""></a> Attr...

    康怀帅
  • 如何开发YUI3的扩展

    YUI是Yahoo发布的一个JS框架,虽然不如jQuery简单,但是如果你是要做一些复杂的事情的时候,有一个合适量级的框架还是能有用不少。

    大江小浪
  • UT /SIT/ UAT

    单元测试任务包括:1 模块接口测试;2 模块局部数据结构测试;3 模块边界条件测试;4 模块中所有独立执行通路测试;5 模块的各条错误处理通路测试。;

    公众号php_pachong
  • 风筝的C++随时记

    关于常量指针和指针常量 两个概念经常混淆啊,这是在考中文四六级啊,所以我给这两个概念起个长一点的名字。 常量指针 = 指向常量的指针 指针常量 = 指针是一个常...

    古时的风筝
  • Maven详解(四)------ 常用的Maven命令

      这章我们讲讲几个常用的 Maven 命令。由于执行命令是在工程的基础上来的,所以我们要先创建一个 Maven 工程,具体如何创建,在上一篇博客已经介绍了:h...

    IT可乐
  • 通过自定义prometheus数据实现k8s hpa

    从 Kubernetes 1.8 开始,资源使用指标(如容器 CPU 和内存使用率)通过 Metrics API 在 Kubernetes 中获取。 这些指标...

    有点技术

扫码关注云+社区

领取腾讯云代金券