N22-第二周作業

1、文件管理類命令有:cp,mv,rm
    cp:復制命令
      用法:cp [OPTION]… SOURCE… DEST
        如果DEST不存在,則先創建此文件并復制源文件的數據流到DEST中
    ]# mkdir test
    tmp]# cd test/
    test]# cp /etc/fstab ./temp
    ]# ls
    temp
    如果DEST存在且是非目錄文件,則覆蓋目標文件
    ]# cp /etc/fstab ./
    cp:是否覆蓋"./fstab"? y
    如果DEST存在且是目錄文件,則先在DEST創建一個與源文件同名的文件,并復制其數據流
    ]# cp /etc/fstab ./
    ]# ls
    fstab
     常用選項:
    -i:覆蓋文件前提醒用戶確認  默認覆蓋前需要用戶確認
    -f:強制覆蓋目標文件
    -r:復制目錄并復制目錄中的文件到目標   cp不加-r默認不能復制目錄    
    ]# cp /dev/mapper ./
    cp: 略過目錄"/dev/mapper"
    test]# cp -r /dev/mapper ./
    test]# ll
    總用量 8
    -rw-r–r–. 1 root root  632 8月  28 13:42 fstab
    drwxr-xr-x. 2 root root 4096 8月  28 13:49 mapper

    mv:移動命令
       mv  [OPTION]…  SOURCE DEST
    如果源文件和目標文件在同一目錄下,則mv命令的作用是重命名文件
    mv命令等于是cp命令后加上刪除源文件的操作。
    mv命令可以不加選項直接移動文件夾
    ]# mv mapper mymapper
    test]# ls
     fstab  mymapper
    
    rm:刪除命令
    rm [OPTION]… FILE…
    常用選項:
    -r:遞歸刪除目錄及其目錄下的文件
    -i   刪除前提醒用戶,root用戶默認啟用該選項
    -f   直接強制刪除
    注意:生產環境所有不用的文件建議不要直接刪除而是移動到某個專用的目錄(模擬回收站)
    ]# rm -rf fstab mymapper/
    test]# ll
      總用量 0

2、bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
    bash通過狀態返回碼來輸出命令執行的狀態結果  區分狀態返回值和命令自身的返回值
                    成功:0  失?。?~255
                 顯示特殊變量 echo $? 來得到狀態返回碼
        ]# df -lh
         ….
        ]# echo $?
        0
        ]# fdisk -l /dev/sdd
          fdisk: 打不開 /dev/sdd: 沒有那個文件或目錄
        test]# echo $?
            1
   bash命令行展開:  
                     ~:自動展開為用戶的家目錄,或一個指定用戶的家目錄
                    {}:可承載一個以逗號分隔的路徑列表,并自動將其展開為多個路徑

            ]# pwd
            /tmp/test
            test]# cd ~
            ~]# pwd
            /root
            ~]# cd /tmp/test/
            test]# mkdir a{b,c}1{d,e,f}
            test]# ls
            ab1d  ab1e  ab1f  ac1d  ac1e  ac1f

3、請使用命令行展開功能來完成以下練習:
   (1)、創建/tmp目錄下的:a_c, a_d, b_c, b_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 {a_,b_}{c,d}
mkdir: 已創建目錄 "a_c"
mkdir: 已創建目錄 "a_d"
mkdir: 已創建目錄 "b_c"
mkdir: 已創建目錄 "b_d"

]# mkdir -pv {bin,dev,lib64,proc,sbin,sys,tmp,boot/grub,etc/{rc.d/init.d,sysconfig/network-scripts},lib/mod
ules,usr/local/{bin,sbin},var/{lock,log,run}}mkdir: 已創建目錄 "bin"
mkdir: 已創建目錄 "dev"
mkdir: 已創建目錄 "lib64"
mkdir: 已創建目錄 "proc"
mkdir: 已創建目錄 "sbin"
mkdir: 已創建目錄 "sys"
mkdir: 已創建目錄 "tmp"
mkdir: 已創建目錄 "boot"
mkdir: 已創建目錄 "boot/grub"
mkdir: 已創建目錄 "etc"
mkdir: 已創建目錄 "etc/rc.d"
mkdir: 已創建目錄 "etc/rc.d/init.d,lib"
mkdir: 已創建目錄 "etc/rc.d/init.d,lib/modules"
mkdir: 已創建目錄 "etc/sysconfig"
mkdir: 已創建目錄 "etc/sysconfig/network-scripts,lib"
mkdir: 已創建目錄 "etc/sysconfig/network-scripts,lib/modules"
mkdir: 已創建目錄 "usr"
mkdir: 已創建目錄 "usr/local"
mkdir: 已創建目錄 "usr/local/bin"
mkdir: 已創建目錄 "usr/local/sbin"
mkdir: 已創建目錄 "var"
mkdir: 已創建目錄 "var/lock"
mkdir: 已創建目錄 "var/log"
mkdir: 已創建目錄 "var/run"

4、文件的元數據信息有哪些,分別表示什么含義,如何查看?如何修改文件的時間戳信息。
 文件包含兩類數據:
  元數據:metadata 描述屬性的數據       可用stat file 看到
  數據:data    文件本身的數據              可用cat file看到
    test]# touch temp.txt
    test]# cat temp.txt
    test]# stat temp.txt
    文件:"temp.txt"
    大?。?             塊:0          IO 塊:4096   普通空文件
    設備:fd00h/64768d    Inode:67374345    硬鏈接:1
    權限:(0644/-rw-r–r–)  Uid:(    0/    root)   Gid:(    0/    root)
    環境:unconfined_u:object_r:user_tmp_t:s0
      時間戳信息:
    最近訪問:2016-08-28 14:25:56.679054155 +0800
    最近更改:2016-08-28 14:25:51.339029587 +0800
    最近改動:2016-08-28 14:25:51.339029587 +0800
    創建時間:-
     可以用touch命令來修改時間戳信息
    t]# touch -a temp.txt
        test]# touch -m temp.txt
最近訪問:2016-08-28 14:28:48.842846226 +0800
最近更改:2016-08-28 14:28:57.903887914 +0800
最近改動:2016-08-28 14:28:57.903887914 +0800

5、如何定義一個命令的別名,如何在命令中引用另一個命令的執行結果?
    bash shell有兩類配置文件。profile類和bashrc類。其中,可以在/etc/bashrc下定義對
    所有用戶都生效的命令別名或者在~/.bashrc定義某個用戶專屬的命令別名。
    ]# vim + /etc/bashrc   例如定義對所有用戶都生效的cls=clear清屏命令
    93 alias cls='clear'
***注意,在配置文件中定義的命令別名或做的其他設置,將在之后啟動的bash shell中永遠生效
    引用命令的執行結果
           1,$(COMMAND) 2,`COMMAND`
   ]# mkdir `date +%y%m%d`
   ]# ls
    160828
   ]# touch $(ls /var/log/m*log | cut -d/ -f4)backup
   test]# ls
     160828  maillogbackup

6、顯示/var目錄下所有以l開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
~]# ls -d /var/l*[0-9]*[[:lower:]]
ls: 無法訪問/var/l*[0-9]*[[:lower:]]: 沒有那個文件或目錄

7、顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
]# ls -d /etc/[0-9]*[^0-9]
ls: 無法訪問/etc/[0-9]*[^0-9]: 沒有那個文件或目錄

8、顯示/etc目錄下,以非字母開頭,后面跟了一個字母以及其它任意長度任意字符的文件或目錄。
]# ls -d /etc/[^[:alpha]][0-9]*
ls: 無法訪問/etc/[^[:alpha]][0-9]*: 沒有那個文件或目錄

9、在/tmp目錄下創建以tfile開頭,后跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
~]# touch /tmp/tfile-`date +%Y-%m-%d-%H-%M-%S`
~]# ls /tmp
tfile-2016-08-28-17-44-47

10、復制/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
]# cp -r /etc/p*[^0-9] /tmp/mytest1/
]# ls /tmp/mytest1/
pam.d   passwd-       pinforc  plymouth  pnm2ppa.conf  postfix  prelink.conf.d  profile    protocols  purple
passwd  pbm2ppa.conf  pki      pm        popt.d        ppp      printcap        profile.d  pulse      python

11、復制/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
]# cp -r /etc/*.d /tmp/mytest2
 tmp]# ls /tmp/mytest2
auto.master.d      depmod.d       init.d        modules-load.d  profile.d  rc5.d          sane.d       usb_modeswitch.d
bash_completion.d  dnsmasq.d      ipsec.d       my.cnf.d        rc0.d      rc6.d          setuptool.d  xinetd.d
binfmt.d           dracut.conf.d  ld.so.conf.d  oddjobd.conf.d  rc1.d      rc.d           statetab.d   yum.repos.d
cgconfig.d         exports.d      libibverbs.d  pam.d           rc2.d      request-key.d  sudoers.d
chkconfig.d        gdbinit.d      logrotate.d   popt.d          rc3.d      rsyslog.d      sysctl.d
cron.d             grub.d         modprobe.d    prelink.conf.d  rc4.d      rwtab.d        tmpfiles.d

12、復制/etc/目錄下所有以l或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。
]# cp -r /etc/[l,m,n]*.conf /tmp/mytest3
 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

原創文章,作者:上海-brown,如若轉載,請注明出處:http://www.www58058.com/41374

(0)
上海-brown上海-brown
上一篇 2016-08-29
下一篇 2016-08-29

相關推薦

  • lvm 邏輯卷 和 網絡管理

    lvm 邏輯卷 和 網絡管理 邏輯卷管理器(LVM) LVM:      Logical Volume Manager, Version: 2 ? dm: device mapper:     將一個或多個底層塊設備組織成一個 邏輯設備的模塊 ?  設備名:     /dev/d…

    Linux干貨 2016-09-01
  • M20 – 1- 第三周博客(2):Linux用戶、組

    一、Linux用戶組詳解 Linux系統中的每個用戶都有一個用戶組,系統能對一個用戶組中的所有用戶進行集中管理。不同Linux系統對用戶組的規定有所不同,如Linux下的用戶屬于和他同名的用戶組,這個用戶組在創建用戶時同時創建。用戶組的管理涉及用戶組的添加、刪除和修改。組的增加、刪除和修改實際上就對/etc/group文件的更新。 用戶組(group)就是具…

    Linux干貨 2016-08-05
  • MySQL優化大全

     1. 優化SQL   1)通過show status了解各種sql的執行頻率         show status like 'Com_%'        了解 Com_select,Com_in…

    Linux干貨 2015-04-13
  • 邏輯卷LVM練習題

    ? 2、新建用戶archlinux,要求其家目錄為/users/archlinux ,而后su切換至archlinux用戶,復制/etc/pam.d目錄至自己 的家目錄 [root@Cloud /]#useradd -d /users/archlinux archlinux #新建用戶archlinux [archlinux@Cloud ~]# getent…

    Linux干貨 2017-03-16
  • samba

    samba samba概述 samba原理 samba服務 samba的命令 samba搭建實例 使用GUI工具SWAT管理samba samba概述 什么是samba? samba是基于smb(Server Message Block)協議的一種實現方式。 samba的功能是什么? samba能夠用來在windows,unix平臺間實現文件共享服務,不同于…

    Linux干貨 2016-04-28
  • linux進程管理

    linux系統進程查看及管理工具 對于服務器來說重要的IO 設備磁盤網絡 pstree,ps,pidof,pgrep,top,htop,glances,pmap,vmstat,dstat,kill,pkill,job,bg,fg,nohup,nice,renice,killall….. pstree命令: pstree-display …

    Linux干貨 2016-09-09

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-30 12:45

    希望同學注意一下作業格式,這樣無論別人閱讀及批改都很方便

欧美性久久久久