学习笔记(四)——目录命令、rm 等常用命令、查看文本命令、文件属性

1.mkdir rmdir 命令:

(1)创建目录:

[[email protected] ~]# mkdir /tmp/learn/folder

如果此时 /tmp/learn 不存在,将会报错,导致 folder 目录无法成功创建。要想级联创建,使用 -p 参数:

[[email protected] ~]# mkdir -p /tmp/learn/folder

(2)删除目录:

先说一种我们经常采用的方法:rm 加 -r 参数

[[email protected] ~]# rm -r /tmp/learn/folder //强制删除使用 -f 参数

另外还有一种方法,使用起来不像 rm -r 一样方便,在这里仅作了解:

[[email protected] ~]# rmdir /tmp/learn/folder

注意,如果此时 folder 目录非空,则删除会报错,导致删除失败。 rmdir 也有 -p 参数,如果使用 -p,会逐层删除 folder 的父目录,前提是 folder 的父目录只包含 folder 自身,也就是说删除folder 后其父目录为空才能删除成功。建议掌握 rm -r 命令即可。

2.rm mv cp 命令:

在 root 用户下, rm mv cp 都被 alias 关联上了自身的 -i 参数:

alias rm=‘rm -i‘

alias mv=‘mv -i‘

alias cp=‘cp -i‘   //普通用户无此关联

所以在使用 root 用户登录时,如果想要强制 rm mv cp,需要使用 -f 参数。这里注意一点,cp 比较特殊,使用 -f 的情况下还是会有 -i 的提示,这会给我们在 cp 需要覆盖大量文件时造成很大的不便,两种解决方法——解除关联,或使用命令的绝对路径,建议使用绝对路径的方法:

[[email protected] ~]# unalias cp  //解除关联

[[email protected] ~]# /bin/cp    //绝对路径

另外,在针对目录进行操作时,rm 和 cp 需要使用 -r 参数(recursive),mv 则不需要使用(mv 也无此参数)。

mv 命令还有重命名的功能:

[[email protected] learn]# mv ./alreadyexists ./chongmingming

[[email protected] learn]# mv ./chongmingming ../xinmingzi

重命名不限于同一目录下,即移动和重命名可以一步完成。上述实现重命名的前提:第一步时 learn/ 目录下无 chongmingming/ 目录,第二步时 learn/ 的父目录中无 xinmingzi/ 目录。如果有这些目录,则会移动到这些目录中,名字不变。

当然,重命名有一条“正牌”命令,不常用,通常用 mv 解决即可:

[[email protected] ~]# rename oldname newname ./oldname

重命名 oldname 文件,重命名为 newname ,仅作了解。

3.查看文本命令:

有如下几种: cat head tail more less

(1)cat: 查看全部, 偶尔用到 -A 参数,作用是显示时在每行行尾添加 $ 符,方便查看较长的行。

(2)head: 查看文本前十行,可以指定查看行数

[[email protected] ~]# head -5 file.log    //指定查看文本前几行,不指定则为前 10 行

(3)tail: 查看文本后十行,可以指定查看行数,也可以指定从文本的第几行看是查看,还有一个常用参数 -f ,通常用来查看不断增加的文件,如日志文件,

[[email protected] ~}# tail -5 file.log    //指定查看文本后几行

[[email protected] ~}# tail -n +5 file.log  //查看文本的五行到最后一行

(4)more: 分屏查看文本,可以整屏查看文本

[[email protected] ~]# more file.log

进入查看模式后, q 退出查看,b 向上翻页, f 向下翻页。这些命令同样适用于 less ,和 man 命令。(more 中的 f 在翻页时会跳过很多行,不知道原因,建议使用 less 命令查看)

(5)less: 分屏查看文本,可以整屏查看文本,相对于 more 来说更好用一点

[[email protected] ~]# less file.log

翻页方式同上述的 more 命令。另外可以使用k 向下一行, j 向上一行,进行查看(也可用上下方向键实现)。less 相对与 more 来说好用的地方时,除非手动 q 退出查看,否则不会退出,而 more 命令在查看到文本末尾后会自动退出查看。而且 less 命令可以逐行上翻下翻查看,建议使用。

4.文件属性:

查看文件属性:

[[email protected] ~]# ls -l file.log

-rw-r--r--. 1 root  root          42 Mar 18 12:11 file.log

这个在之前的笔记中也提到过一部分,但没有提到权限,这里说一下。权限分为三组,从左到右分别为 属主权限, 属组权限, 其他人权限。 r 代表 可读, w 代表 可写, x 对于文件来说代表 可执行, 对于目录来说代表 可进入(cd)。权限后的 . 和 SELinux 有关。 inode 数和几个文件使用该 inode 号有关。

时间: 2024-08-29 01:28:26

学习笔记(四)——目录命令、rm 等常用命令、查看文本命令、文件属性的相关文章

Linux学习笔记<三>——常用的查看文本命令和文本处理命令

查看文本: 1.cat:连接并显示文本 tac:cat的倒置显示 -n:在每行行首添加行数显示 -E:每行显示换行符 -A:显示所有,包括文本和各种特殊符号 Linux的文本换行符为$,而Windows的文本换行符是$+Enter 2.可分屏显示的more和less more:向后翻,翻到最后就退出 less:向后翻,翻到最后不会自动退出 more和less显示窗口下操作: 向后翻一页:space键 向前翻一页:b键 退出显示窗口:q键 3.head:查看前n行 tail:查看后n行 -n 数字

Linux学习笔记四:Linux的文件搜索命令

1.文件搜索命令  which 语法:which [命令名称] 范例:$which ls  列出ls命令所在目录 [[email protected] ~]$ which ls alias ls='ls --color=auto' /bin/ls 另外一个命令:whereis [名称名称],也可以列出命令所在目录. [[email protected] ~]$ whereis ls ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/ma

MySql学习笔记(一)之DQL常用查询

MySql学习笔记(一)之DQL常用查询 前言:mysql是中小型的数据库软件,SQL语言分为DDL,DCL,DML,DQL四种,在这里重点讲解DQL的单表查询. 正文:在学习mysql单表查询之前,我们先做一些准备工作. 需要安装的软件如下: 1.mysql,版本可以选择5.1或者5.5,安装过程可以参考博客:http://www.cnblogs.com/ixan/p/7341637.html 2.mysql图形化管理软件:Navicate,sqlyog(二选一,推荐使用sqlyog). 本文

代码管理工具 --- git的学习笔记四《重新整理git(1)》

1.创建版本库 mkdir  创建目录 cd  地址,到该地址下 pwd 显示当前目录 1.创建目录 $ mkdir startGit $ cd startGit $ pwd 显示当前目录 或者cd到桌面,然后再创建目录 2.初始化版本库 $ git init 初始化仓库 提示信息:Initialized empty Git repository in /Users/xingzai/Desktop/startGit/.git/ 建立一个空的git仓库在/Users/xingzai/Desktop

设计模式学习笔记(目录篇)

设计模式学习笔记(目录篇) 为了方便查看,特此将设计模式学习笔记系列单独做一个目录. 1   设计模式学习笔记(一:命令模式) 2   设计模式学习笔记(二:观察者模式) 3   设计模式学习笔记(三:装饰模式) 4   设计模式学习笔记(四:策略模式) 5   设计模式学习笔记(五:适配器模式) 6   设计模式学习笔记(六:责任链模式) 7   设计模式学习笔记(七:外观模式) 8   设计模式学习笔记(八:迭代器模式) 9   设计模式学习笔记(九:中介者模式) 10  设计模式学习笔记(

学习笔记——Maven实战(七)常用Maven插件介绍(上)

我们都知道Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成,例如编译源代码是由maven-compiler-plugin完成的.进一步说,每个任务对应了一个插件目标(goal),每个插件会有一个或者多个目标,例如maven-compiler-plugin的compile目标用来编译位于src/main/java/目录下的主源码,testCompile目标用来编译位于src/test/java/目录下的测试源码. 用户可以通过两种方式调用Maven插

Swift学习笔记四:数组和字典

最近一个月都在专心做unity3d的斗地主游戏,从早到晚,最后总算是搞出来了,其中的心酸只有自己知道.最近才有功夫闲下来,还是学习学习之前的老本行--asp.net,现在用.net做项目流行MVC,而不是之前的三层,既然技术在更新,只能不断学习,以适应新的技术潮流! 创建MVC工程 1.打开Visual studio2012,新建MVC4工程 2.选择工程属性,创建MVC工程 3.生成工程的目录 App_Start:启动文件的配置信息,包括很重要的RouteConfig路由注册信息 Conten

NLTK学习笔记(四):自然语言处理的一些算法研究

自然语言处理中算法设计有两大部分:分而治之 和 转化 思想.一个是将大问题简化为小问题,另一个是将问题抽象化,向向已知转化.前者的例子:归并排序:后者的例子:判断相邻元素是否相同(与排序). 这次总结的自然语言中常用的一些基本算法,算是入个门了. 递归 使用递归速度上会受影响,但是便于理解算法深层嵌套对象.而一些函数式编程语言会将尾递归优化为迭代. 如果要计算n个词有多少种组合方式?按照阶乘定义:n! = n*(n-1)*...*1 def func(wordlist): length = le

Android学习笔记四:添加Source

问题描述 Source not foundThe JAR file D:\.....\sdk\platforms\android-20\android.jar has no source attachment. 问题原因及解决办法 1. 使用SDK Manager下载最新版本的Sources for Android SDK 一般文件下载目录默认在SDK下的sources文件中即 \adt-bundle-windows-x86_64-20130522\sdk\sources\android-20