N32-第二周-小罗

1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。


(1)目录与路径

相对路径与绝对路径

绝对路径:路径的写法【一定由根目录 / 写起】

/usr/share/doc 这个目录。

相对路径:路径的写法【不是由 / 写起】

由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: 【cd ../man】这就是相对路径的写法。相对路径意指相对于当前的工作目录


(2) cat命令

cat是linux的基本文本输出命令,通常用于查看文件内容。

语法

cat [OPTION]... [FILE]...

参数

-n 或  --number:由1开始对所有输出的行数编号。

-b 或 --number-nonblank:和-n相似,只不过对于空白行不编号。

-s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。

-v 或 --show-nonprinting:使用^和M-符号,除了LFD和TAB之外。

-E或--show-ends:在每行结束处显示$。

-T或--show-tabs:将TAB字符显示为^|。

-e:等价于-vE。

-A,--show-all:等价于-vET。

-t:等价于"-vT"选项。

cat主要功能

1、一次显示文件的所有内容 cat filename

2、从磁盘创建一个新文件cat >filename(只能创建新文件不能编辑已有文件)

3、将几个文件合并为一个文件cat  file1  file2  > file

实例


cat file


cat -n file


cat -b file


cat -E file


cat两个文件合并成一个文件.png


(3) cd (切换目录)

示例:


cd



(4) pwd(显示当前所在的目录)

参数:

-P  :显示出确实的路径,而非使用链接 (link) 路径。(P是大写)

示例:


pwd


(5)mkdir (建立新目录)

[root@yangxu ~]# mkdir [-mp] 目录名称

参数:

-m :配置文件目录的权限!我们可以自己设定自己想要的权限,而不需要使用umask定义的默认权限

-p :帮助你直接将所需要的目录递归建立起来!

范例:


建立一名为 test 的新目录



mkdir: 无法创建目录"test1/test2/test3/test4": 没有那个文件或目录  


加了这个 -p 的参数,可以自行帮我们建立多层目录!


-m 来强制设定属性,否则系统会使用默认属性


(6) rmdir (删除"空"目录)

           rmdir [-p] 目录名称

         -p :连同上层『空的』目录也一起删除


rmdir: 删除 "test1" 失败: 目录非空


利用 -p 这个参数,立刻就可以将 test1/test2/test3/test4 一次删除~

注:不过要注意的是,这个 rmdir 仅能【删除空的目录】!


(7) ls (查看文件和目录)

          ls [-aAdfFhilRS] 目录名称

          ls [–color={none,auto,always}] 目录名称

          ls [–full-time] 目录名称

参数:

-a  :全部的文件,连同隐藏文件( 开头为 . 的目录) 一起列出来~

-A  :全部的文件,连同隐藏文件,但不包括 . 与 .. 这两个目录,一起列出来~

-d  :仅列出目录本身,而不是列出目录内的文件数据

-f  :直接列出结果,而不进行排序 (ls 预设会以文件名排序!)

-F  :根据文件、目录等信息,给予附加数据结构,例如:

      *:代表可执行文件; /:代表目录; =:代表 socket 档案; |:代表 FIFO 文件;

-h  :列出文件的打小(例如GB、KB等等)

-i  :列出 inode 位置,而非列出文件属性;

-l  :长数据串行出,包含文件的属性等等数据;

-n  :列出 UID 与 GID 而非使用者与群组的名称 (UID与GID会在账号管理提到!)

-r  :将排序结果反向输出,例如:原本文件名由小到大,反向则为由大到小;

-R  :连同子目录内容一起列出来;

-S  :以文件容量大小排序!

-t  :依时间排序

–color=never  :不要依据文件特性给予颜色显示;

–color=always :显示颜色

–color=auto   :让系统自行依据设定来判断是否给予颜色

–full-time    :以完整时间模式 (包含年、月、日、时、分) 输出

–time={atime,ctime} :输出 access 时间或 改变权限属性时间 (ctime) 

举例:


ls -a


ls -i


ls -lh

(8) cp (复制命令)

                      cp [-adfilprsu] 源文件(source) 目的文件(destination)

                      cp [options] source1 source2 source3 …. directory

参数:

-a  :相当于 -pdr 的意思;

-d  :若来源文件为链接文件的属性(link file),则复制链接文件属性而非档案本身;

-f  :为强制 (force) 的意思,若有重复或其他疑问时,不会询问使用者,而强制复制;

-i  :若目的文件(destination)已经存在时,在覆盖时会先询问是否真的动作!

-l  :进行硬式连结 (hard link) 的连结文件建立,而非复制文件本身;

-p  :连同文件的属性一起复制过去,而非使用默认属性;

-r  :递归持续复制,用于目录的复制行为;

-s  :复制成为符号链接文件 (symbolic link),亦即『快捷方式』文件;

-u  :若 destination 比 source 旧才更新 destination 

举例:



目标目录不存在直接报错



不加-r参数报错


                                              原有pam目录不存在,加上-r参数,复制源目录,目标目录同时创建并复制进去


这2个文件权限为644,而且fstab文件属主和属组都为hadoop


不加-a选项,fstab文件复制后,属主和属组都变为test2目录的属主和属组


使用-a选项后,文件属主和属组还有权限保持原样


(9) rm (删除文件或目录)

         rm [-fir] 文件或目录

参数:

-f  :就是 force 的意思,强制移除;

-i  :互动模式,在删除前会询问使用者是否动作

-r  :递归删除!最常用在目录的删除了

举例



(10) mv (移动文件与目录、文件重命名)

            mv [-fiu] source destination

            mv [options] source1 source2 source3 …. directory

参数:

-f  :force 强制的意思,强制直接移动而不询问;

-i  :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

-u  :若目标文件已经存在,且 source 比较新,才会更新 (update)

举例:



(11) tac (反向显示)

举例


tac是将cat反写,所以它的功能就与cat相反


(12) nl (显示时添加行号)

             nl [-bnw] 文件

参数:

-b  :指定行号指定的方式,主要有两种:

      -b a :表示不论是否为空行,也同样列出行号;

      -b t :如果有空行,空的那一行不要列出行号;

-n  :列出行号表示的方法,主要有三种:

      -n ln :行号在屏幕的最左方显示;

      -n rn :行号在自己字段的最右方显示,且不加 0 ;

      -n rz :行号在自己字段的最右方显示,且加 0 ;

-w  :行号字段的占用的位数。

举例



-b a :表示不论是否为空行,也同样列出行号;


(13) head (取出前几行)

             head [-n number] 文件

参数:

-n  :后面接数字,代表显示几行的意思

举例


默认显示前面十行


显示前 20 行


(14) tail (取出后面几行)

            tail [-n number] 文件

参数:

-n  :后面接数字,代表显示几行的意思

举例:


默认显示最后的十行


显示最后的 20 行


2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。


1. 命令执行状态返回值

作为演示,我们键入一条命令 source /etc/profile,回车。

键入的命令到底有没有执行成功呢?我们输入 echo $? 来查看该命令执行状态的返回值。返回值为 0,表示成功执行。


我们再键入一条命令:source /etc,回车,然后再用 echo $? 查看。返回值为 1,表示该命令出错。


我们最后键入 mann ls,回车,然后用 echo $? 查看。返回值为 127,不为 0,同样表示该命令出错。


2.命令行命令展开:

~:展开为用户的主目录

~USERNAME:展开为指定用户的主目录

{}:可承载一个以逗号分隔的列表,并将其展开为多个路径

/tmp{a,b} - /tmp/a. /tmp/b

/tmp/{tom,jerry}/hi = /tmp/tom/hi, /tmp/jerry/hi


3、请使用命令行展开功能来完成以下练习:


  (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d

           mkdir -p {a,b}_{c,d}


  (2)、创建/tmp/mylinux目录下的:

mylinux/

    ├── bin

    ├── boot

    │   └── grub

    ├── dev

    ├── etc

    │   ├── rc.d

    │   │   └── init.d

    │   └── sysconfig

    │      └── network-scripts

    ├── lib

    │   └── modules

    ├── lib64

    ├── proc

    ├── sbin

    ├── sys

    ├── tmp

    ├── usr

    │   └── local

    │      ├── bin

    │      └── sbin

    └── var

        ├── lock

        ├── log

        └── run

 mkdir -pv /tmp/mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-               scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}



4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。



1)文件的元数据信息及查看

文件的数据分两种:一种元数据,既属性数据;一种就是数据本身;可使用stat命令查看文件的元数据:

可以使用stat命令查看元数据;

举例:


其中:

file:文件名;

size:文件大小

block:文件占了多少个数据块

IO Block:文件所占数据块的块大小

Device:硬件,既说明该文件在硬盘的那个柱面

Inode:节点号

links:链接

Access(第一个):权限

Uid:该文件所属的属主

Gid:该文件所属的属组

context:安全上下文

Access(第二个):文件上一次的访问时间

Modify:文件上一次修改的时间

Change:文件上一次属性更改的时间

2)修改文件的时间戳信息:

 可以使用touch命令更改文件的时间戳:

 touch [-acdmt] 文件

选项与参数:

-a  :仅修订 access time;

-c  :仅修改文件的时间,若该文件不存在则不创建新文件;

-d  :后面可以接欲修订的日期而不用目前的日期,也可以使用 –date="日期或时间"

-m  : 仅修改 mtime ;

-t  : 后面可以接欲修订的时间而不用目前的时间,格式为[YYMMDDhhmm]

举例:

查看目前时间点

然后我们使用touch命令看下效果;

3个时间点都已经改变;


5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?


定义别名:alias

语法:# alias name='command line'

alias的作用仅在该次登入的操作,即输入一次alias后,这个修改只在当前的Shell生效。如果重新开启一个Shell,或者重新登录,则这些alias将无法使用。

alias永久化的方法:

<1>.若要每次登入就自动生效别名,则把别名加在/etc/profile或~/.bashrc中。然后# source ~/.bashrc

<2>.若要让每一位用户都生效别名,则把别名加在/etc/bashrc最后面,然后# source /etc/bashrc

示例:

添加别名




重新再打开个shell,可以看见之前创立的别名已经没有;



可以编辑.bashrc文件,在里面添加别名,这个添加后对当前用户有效;切换用户后,就无效;


编辑/etc/bashrc


在文件末尾添加别名,对全局用户有效;

删除别名:



显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。



            



显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。




显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。




在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。




复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。




复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。




复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。



©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,734评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,931评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,133评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,532评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,585评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,462评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,262评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,153评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,587评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,792评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,919评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,635评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,237评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,855评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,983评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,048评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,864评论 2 354

推荐阅读更多精彩内容

  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,261评论 9 467
  • 系统管理与维护命令 date date(选项)(参数) | 选项 | 说明 | | :-------- | ...
    蓓蓓的万能男友阅读 3,896评论 0 5
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,166评论 2 33
  • 1.Linux上的文件管理类命令,其常用的使用方法及其相关示例演示 文件与目录的管理上,不外乎显示属性、 拷贝、删...
    whamai阅读 264评论 0 0
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 4,381评论 0 5