博客作業-N22第二周

1、linux上的文件管理類命令都有那些,其常用的使用方法及其相關示例演示。

答:

cp 復制文件

[root@localhost network-scripts]# cp ifcfg-eno16777736 ifcfg-eno.bak

[root@localhost network-scripts]# ls

ifcfg-eno16777736  ifdown-post      ifup-eth     ifup-sit

ifcfg-eno.bak      ifdown-ppp       ifup-ib      ifup-Team

ifcfg-lo           ifdown-routes    ifup-ippp    ifup-TeamPort

ifdown             ifdown-sit       ifup-ipv6    ifup-tunnel

ifdown-bnep        ifdown-Team      ifup-isdn    ifup-wireless

ifdown-eth         ifdown-TeamPort  ifup-plip    init.ipv6-global

ifdown-ib          ifdown-tunnel    ifup-plusb   network-functions

ifdown-ippp        ifup             ifup-post    network-functions-ipv6

ifdown-ipv6        ifup-aliases     ifup-ppp

ifdown-isdn        ifup-bnep        ifup-routes

mv  移動或重命名

[root@localhost network-scripts]# mv ifcfg-eno.bak /root/

[root@localhost network-scripts]# ls /root

1                ifcfg-eno.bak         mysystem  模板  圖片  下載  桌面

anaconda-ks.cfg  initial-setup-ks.cfg  公共      視頻  文檔  音樂

rm  刪除文件 ·

[root@localhost ~]# rm -rf /

rm: 在"/" 進行遞歸操作十分危險

rm: 使用 –no-preserve-root 選項跳過安全模式

2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。

命令執行狀態返回值內容和示例:通過返回值來判斷輸出結果是否成功,返回值為0則成功,非0則失?。?-255)

例如:掛載光盤到/mnt目錄

[root@localhost ~]# mount /dev/cdrom /mmnt

mount: 掛載點 /mmnt 不存在

[root@localhost ~]# echo $?

32

###

返回值為非0,失敗

[root@localhost ~]# mount /dev/cdrom /mnt

mount: /dev/sr0 寫保護,將以只讀方式掛載

[root@localhost ~]# echo $?

0

###

返回值為0,成功

命令行展開:在root家目錄創建 

/root/mysystem/

|– bin

|– etc

|   `– sysconfig

|       `– network-scripts

|– sbin

|– usr

|   |– bin

|   |– lib

|   |– lib64

|   |– local

|   |   |– bin

|   |   |– etc

|   |   |– lib

|   |   `– sbin

|   `– sbin

`– var

     |– cache

     |– log

                

[root@localhost ~]# mkdir -pv mysystem/{bin,etc/sysconfig/network-scripts,sbin,usr/{bin,lib,lib64,local/{bin,etc,lib,sbin},sbin},var/{cache,log}}

mkdir: 已創建目錄 "mysystem"

mkdir: 已創建目錄 "mysystem/bin"

mkdir: 已創建目錄 "mysystem/etc"

mkdir: 已創建目錄 "mysystem/etc/sysconfig"

mkdir: 已創建目錄 "mysystem/etc/sysconfig/network-scripts"

mkdir: 已創建目錄 "mysystem/sbin"

mkdir: 已創建目錄 "mysystem/usr"

mkdir: 已創建目錄 "mysystem/usr/bin"

mkdir: 已創建目錄 "mysystem/usr/lib"

mkdir: 已創建目錄 "mysystem/usr/lib64"

mkdir: 已創建目錄 "mysystem/usr/local"

mkdir: 已創建目錄 "mysystem/usr/local/bin"

mkdir: 已創建目錄 "mysystem/usr/local/etc"

mkdir: 已創建目錄 "mysystem/usr/local/lib"

mkdir: 已創建目錄 "mysystem/usr/local/sbin"

mkdir: 已創建目錄 "mysystem/usr/sbin"

mkdir: 已創建目錄 "mysystem/var"

mkdir: 已創建目錄 "mysystem/var/cache"

mkdir: 已創建目錄 "mysystem/var/log"

[root@localhost ~]# tree /root/mysystem

/root/mysystem

├── bin

├── etc

│   └── sysconfig

│       └── network-scripts

├── sbin

├── usr

│   ├── bin

│   ├── lib

│   ├── lib64

│   ├── local

│   │   ├── bin

│   │   ├── etc

│   │   ├── lib

│   │   └── sbin

│   └── sbin

└── var

    ├── cache

    └── log

18 directories, 0 files

3、請使用命令行展開功能來完成以下練習:

1)創建/tmp目錄下的a_c,a_d,b_c,b_d 

[root@localhost ~]# mkdir -pv /tmp/{a_c,a_d,b_c,b_d}

mkdir: 已創建目錄 "/tmp/a_c"

mkdir: 已創建目錄 "/tmp/a_d"

mkdir: 已創建目錄 "/tmp/b_c"

mkdir: 已創建目錄 "/tmp/b_d"

[root@localhost ~]# tree /tmp

/tmp

├── a_c

├── a_d

├── anaconda.log

├── b_c

├── b_d

├── hogsuspend

├── hsperfdata_root

├── hsperfdata_zhouchenming

├── ifcfg.log

├── ks-script-cDx2Fd

├── packaging.log

├── program.log

├── sensitive-info.log

├── ssh-Dl5iJSKqllmA

│   └── agent.3372

├── storage.log

├── systemd-private-964ff6c7e72046388caf9c6e002e207e-colord.service-05E8Y3

│   └── tmp

├── systemd-private-964ff6c7e72046388caf9c6e002e207e-cups.service-SWcuSl

│   └── tmp

├── systemd-private-964ff6c7e72046388caf9c6e002e207e-rtkit-daemon.service-1y0FzG

│   └── tmp

├── systemd-private-964ff6c7e72046388caf9c6e002e207e-vmtoolsd.service-stzVyR

│   └── tmp

│       └── vmware-root

├── tracker-extract-files.0

├── tracker-extract-files.1000

├── yum.log

└── yum_save_tx.2016-08-20.09-13.c8w99O.yumtx

18 directories, 11 files

 

2)創建/tmp/mylinux目錄下的

[root@localhost ~]# 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}}

mkdir: 已創建目錄 "/tmp/mylinux"

mkdir: 已創建目錄 "/tmp/mylinux/bin"

mkdir: 已創建目錄 "/tmp/mylinux/boot"

mkdir: 已創建目錄 "/tmp/mylinux/boot/grub"

mkdir: 已創建目錄 "/tmp/mylinux/dev"

mkdir: 已創建目錄 "/tmp/mylinux/etc"

mkdir: 已創建目錄 "/tmp/mylinux/etc/rc.d"

mkdir: 已創建目錄 "/tmp/mylinux/etc/rc.d/init.d"

mkdir: 已創建目錄 "/tmp/mylinux/etc/sysconfig"

mkdir: 已創建目錄 "/tmp/mylinux/etc/sysconfig/network-scripts"

mkdir: 已創建目錄 "/tmp/mylinux/lib"

mkdir: 已創建目錄 "/tmp/mylinux/lib/modules"

mkdir: 已創建目錄 "/tmp/mylinux/lib64"

mkdir: 已創建目錄 "/tmp/mylinux/proc"

mkdir: 已創建目錄 "/tmp/mylinux/sbin"

mkdir: 已創建目錄 "/tmp/mylinux/sys"

mkdir: 已創建目錄 "/tmp/mylinux/tmp"

mkdir: 已創建目錄 "/tmp/mylinux/usr"

mkdir: 已創建目錄 "/tmp/mylinux/usr/local"

mkdir: 已創建目錄 "/tmp/mylinux/usr/local/bin"

mkdir: 已創建目錄 "/tmp/mylinux/usr/local/sbin"

mkdir: 已創建目錄 "/tmp/mylinux/var"

mkdir: 已創建目錄 "/tmp/mylinux/var/lock"

mkdir: 已創建目錄 "/tmp/mylinux/var/log"

mkdir: 已創建目錄 "/tmp/mylinux/var/run"

[root@localhost ~]# tree /tmp/mylinux

/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

24 directories, 0 files

4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。

文件的元數據有文件明、大小、塊、IO塊、設備權限、UID、GID、環境、最近訪問、最近更改和最近改動,創建時間

使用stat命令查看時間戳信息,修改時間戳使用touch命令

修改時間戳,例如:

[root@localhost ~]# cp /etc/sysconfig/network-scripts/ifcfg-eno16777736  /tmp/1

[root@localhost ~]# stat 1

  文件:"1"

  大小:0         塊:0          IO 塊:4096   普通空文件

設備:fd00h/64768d Inode:207658590   硬鏈接:1

權限:(0644/-rw-r–r–)  Uid:(    0/    root)   Gid:(    0/    root)

環境:unconfined_u:object_r:admin_home_t:s0

最近訪問:2016-08-20 13:58:34.684521722 +0800

最近更改:2016-08-20 13:58:34.684521722 +0800

最近改動:2016-08-20 13:58:34.684521722 +0800

創建時間:-

修改文件1的modify time時間為2011年12月2日4時22分  

例如:

[root@localhost ~]# touch -t 1112020422 1

[root@localhost ~]# stat 1

  文件:"1"

  大?。?         塊:0          IO 塊:4096   普通空文件

設備:fd00h/64768d Inode:207658590   硬鏈接:1

權限:(0644/-rw-r–r–)  Uid:(    0/    root)   Gid:(    0/    root)

環境:unconfined_u:object_r:admin_home_t:s0

最近訪問:2011-12-02 04:22:00.000000000 +0800

最近更改:2011-12-02 04:22:00.000000000 +0800

最近改動:2016-08-20 14:07:12.228713850 +0800

創建時間:-

5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?

使用alias命令定義別名

[root@localhost ~]# alias stop=cp

[root@localhost ~]# alias 

alias cp='cp'

alias egrep='egrep –color=auto'

alias fgrep='fgrep –color=auto'

alias grep='grep –color=auto'

alias l.='ls -d .* –color=auto'

alias ll='ls -l –color=auto'

alias ls='ls –color=auto'

alias mv='mv -i'

alias rm='rm -i'

alias stop='cp'

alias which='alias | /usr/bin/which –tty-only –read-alias –show-dot –show-tilde'

在命令中引用另一個命令的執行結果

[root@localhost ~]# touch tfile$(date +%b-%h-%m-%s)

[root@localhost ~]# ls

anaconda-ks.cfg  initial-setup-ks.cfg  tfile8月-8月-08-1471686677  公共  模板  視頻  圖片  文檔  下載  音樂  桌面

6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其他字符)的文件或目錄

[root@localhost ~]# ls -d /var/l?[[:lower:]]

/var/lib  /var/log

7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。

[root@localhost ~]# ls -d /etc/?[^0-9]

/etc/hp  /etc/pm

[root@localhost ~]# ls -d /etc/?[^[:digit:]]

/etc/hp  /etc/pm

8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其他任意長度任意字符的文件或目錄。

[root@localhost ~]# ls -d /etc/[^a-z][a-z]*

/etc/1yky2y

[root@localhost ~]# ls -d /etc/[^[:alpha:]]*[a-z]

/etc/1yky2y

9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22

[root@localhost tmp]# touch tfile$(date +%Y-%m-%H-%M-%S)

[root@localhost tmp]# ll

總用量 168

-rw-r–r–.  1 root         root           1828 8月  19 08:48 anaconda.log

prw——-.  1 root         root              0 8月  20 09:17 hogsuspend

drwxr-xr-x.  2 root         root              6 8月  20 09:20 hsperfdata_root

drwxr-xr-x.  2 zhouchenming zhouchenming      6 8月  19 08:48 hsperfdata_zhouchenming

-rw-r–r–.  1 root         root              0 8月  19 08:43 ifcfg.log

-rwx——.  1 root         root            827 8月  19 08:36 ks-script-cDx2Fd

drwxr-xr-x. 14 root         root           4096 8月  20 17:33 mylinux

-rw-r–r–.  1 root         root              0 8月  19 08:43 packaging.log

-rw-r–r–.  1 root         root              0 8月  19 08:43 program.log

-rw-r–r–.  1 root         root              0 8月  19 08:43 sensitive-info.log

drwx——.  2 root         root             23 8月  20 09:17 ssh-Dl5iJSKqllmA

-rw-r–r–.  1 root         root              0 8月  19 08:43 storage.log

drwx——.  3 root         root             16 8月  20 09:16 systemd-private-964ff6c7e72046388caf9c6e002e207e-colord.service-05E8Y3

drwx——.  3 root         root             16 8月  20 09:16 systemd-private-964ff6c7e72046388caf9c6e002e207e-cups.service-SWcuSl

drwx——.  3 root         root             16 8月  20 09:16 systemd-private-964ff6c7e72046388caf9c6e002e207e-rtkit-daemon.service-1y0FzG

drwx——.  3 root         root             16 8月  20 09:16 systemd-private-964ff6c7e72046388caf9c6e002e207e-vmtoolsd.service-stzVyR

-rw-r–r–.  1 root         root              0 8月  20 17:59 tfile2016-08-17-59-35

drwx——.  2 root         root              6 8月  20 17:51 tracker-extract-files.0

drwx——.  2 zhouchenming zhouchenming      6 8月  19 08:48 tracker-extract-files.1000

-rw——-.  1 root         root              0 8月  19 08:25 yum.log

-rw——-.  1 root         root         159513 8月  20 09:13 yum_save_tx.2016-08-20.09-13.c8w99O.yumtx

10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmpmytest1目錄中

[root@localhost ~]# cp -a /etc/p*[a-z] /tmp/mytest1

[root@localhost ~]# ll /tmp/mytest1

總用量 52

drwxr-xr-x. 2 root root 4096 8月  19 08:36 pam.d

-rw-r–r–. 1 root root 2336 8月  19 08:48 passwd

-rw-r–r–. 1 root root 1362 6月  10 2014 pbm2ppa.conf

-rw-r–r–. 1 root root 2872 6月  10 2014 pinforc

drwxr-xr-x. 9 root root   91 8月  19 08:28 pki

drwxr-xr-x. 2 root root   27 8月  19 08:30 plymouth

drwxr-xr-x. 5 root root   49 8月  19 08:25 pm

-rw-r–r–. 1 root root 6300 6月  10 2014 pnm2ppa.conf

drwxr-xr-x. 2 root root    6 6月  10 2014 popt.d

drwxr-xr-x. 2 root root 4096 8月  19 08:32 postfix

drwxr-xr-x. 3 root root 4096 8月  19 08:28 ppp

drwxr-xr-x. 2 root root  101 8月  19 08:28 prelink.conf.d

-rw-r–r–. 1 root root  233 6月   7 2013 printcap

-rw-r–r–. 1 root root 1750 6月   7 2013 profile

drwxr-xr-x. 2 root root 4096 8月  19 08:32 profile.d

-rw-r–r–. 1 root root 6545 6月   7 2013 protocols

drwxr-xr-x. 2 root root   75 8月  19 08:29 pulse

drwxr-xr-x. 2 root root   22 8月  19 08:30 purple

drwxr-xr-x. 2 root root   34 8月  19 08:26 python

11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。

[root@localhost mytest2]# cp -a /etc/*.d /tmp/mytest2

[root@localhost mytest2]# ls

auto.master.d      exports.d     modules-load.d  rc2.d          sane.d

bash_completion.d  gdbinit.d     my.cnf.d        rc3.d          setuptool.d

binfmt.d           grub.d        oddjobd.conf.d  rc4.d          statetab.d

cgconfig.d         init.d        pam.d           rc5.d          sudoers.d

chkconfig.d        ipsec.d       popt.d          rc6.d          sysctl.d

cron.d             ld.so.conf.d  prelink.conf.d  rc.d           tmpfiles.d

depmod.d           libibverbs.d  profile.d       request-key.d  usb_modeswitch.d

dnsmasq.d          logrotate.d   rc0.d           rsyslog.d      xinetd.d

dracut.conf.d      modprobe.d    rc1.d           rwtab.d        yum.repos.d

12、復制/etc目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中

[root@localhost tmp]# cp /etc/l*.conf /etc/m*.conf /etc/n*.conf /tmp/mytest3/

[root@localhost tmp]# ls /tmp/mytest3

ld.so.conf     libuser.conf  logrotate.conf  mke2fs.conf  nfsmount.conf  ntp.conf

libaudit.conf  locale.conf   man_db.conf     mtools.conf  nsswitch.conf  numad.conf

原創文章,作者:zhouchenming,如若轉載,請注明出處:http://www.www58058.com/38195

(0)
zhouchenmingzhouchenming
上一篇 2016-08-22
下一篇 2016-08-22

相關推薦

  • 13-高級文件系統管理-Quota,RAID,LVM

    配置配額系統     綜述         在內核中執行         以文件系統(磁盤分區)為單位啟用         對不同組或者用戶的策略不同         根據塊或者節…

    2017-03-16
  • 包管理之包查詢,包校驗,rpm數據庫.yum的詳細用法及說明

    一.概述 包查詢 rpm {-q|–query} [select-options] [query-options] [select-options] -a: 所有包 -f: 查看指定的文件由哪個程序包安裝生成 -p rpmfile:針對尚未安裝的程序包文件做查詢操作; –whatprovides CAPABILITY:查詢指定的CAP…

    Linux干貨 2016-08-30
  • MySQL Fabric 安裝部署

    MySQL Fabric  是一個用于管理 MySQL 服務器群的可擴展框架。該框架實現了兩個特性 — 高可用性 (HA) 以及使用數據分片的橫向擴展。這兩個特性既可以單獨使用,也可以結合使用。 環境: 安裝MySQL Fabric 配置MySQL Fabric MySQL Fabric 安裝管理數據庫fabric 啟動MySQL Fab…

    數據庫運維 2016-06-03
  • N25 第二周作業

    一.Linux上常用的文件管理類命令及用法示例     1.cp復制命令,具體有兩個,一為單源復制,一種為多源復制。      常用選項         -i :交互式復制,覆蓋之前提醒用戶確認。       …

    Linux干貨 2016-12-12
  • Linux的文本處理工具及grep正則表達式的使用

    文本處理工具及grep正則表達式的使用 本章節學習的內容: 1、各種文本工具來查看、分析、統計文本文件 2、grep正則表達式 3、擴展正則表達式 一、抽取文本的工具: 1、按文件內容:less和cat 2、按文件截取:head和tail 3、按列抽取:cut 4、按關鍵字抽取:grep 二、文件查看命令:cat, tac,rev 1、命令cat: (1)文…

    Linux干貨 2016-08-05

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-22 14:41

    寫的很好,排版還可以在漂亮一點,加油,最后一個嘗試用命令展開來寫

欧美性久久久久