N25_第二周博客作業:

N25_第二周博客作業:

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

Linux上常見的文件管理類命令有mkdir、touch、cp、mv、rm、stat。

mkdir:創建新目錄

SYNOPSIS

  mkdir [OPTION]… DIRECTORY…

常用:

1、直接建目錄

[root@test setuptmp]# mkdir aa.tmp
[root@test setuptmp]# ll
總用量 8
drwxr-xr-x. 2 root root      6 12月  9 15:45 aa.tmp

blob.png

2、創建多級目錄

[root@test setuptmp]# mkdir /tmp/aa/aa/aa/aa/ -pv
mkdir: 已創建目錄 "/tmp/aa"
mkdir: 已創建目錄 "/tmp/aa/aa"
mkdir: 已創建目錄 "/tmp/aa/aa/aa"
mkdir: 已創建目錄 "/tmp/aa/aa/aa/aa/"
[root@test setuptmp]#

blob.png

blob.png

touch:創建文件及修改時間戳

SYNOPSIS

touch [OPTION]… FILE…

常用:文件存在就改時間戳,文件不存在就創建文件。

[root@test setuptmp]# ll
-rw-r--r--. 1 root root    237 12月  8 23:02 id_rsa.pub
[root@test setuptmp]# touch id_rsa.pub 
[root@test setuptmp]# ll
-rw-r--r--. 1 root root    237 12月  9 15:51 id_rsa.pub
[root@test setuptmp]# touch aaa
[root@test setuptmp]# ll
-rw-r--r--. 1 root root      0 12月  9 15:51 aaa
-rw-r--r--. 1 root root    237 12月  9 15:51 id_rsa.pub

blob.png

cp:拷貝文件

SYNOPSIS

  cp [OPTION]… [-T] SOURCE DEST

  cp [OPTION]… SOURCE… DIRECTORY

  cp [OPTION]… -t DIRECTORY SOURCE…

常用:

復制單個文件到一個目錄中

[root@test setuptmp]# ll aa.tmp/
總用量 0
[root@test setuptmp]# cp aaa aa.tmp/
[root@test setuptmp]# ll aa.tmp/    
總用量 0
-rw-r--r--. 1 root root 0 12月  9 15:57 aaa

blob.png

復制多個文件到一個目錄中

[root@test setuptmp]# cp fstab id_rsa.pub aa.tmp/
[root@test setuptmp]# ll aa.tmp/                 
總用量 8
-rw-r--r--. 1 root root   0 12月  9 15:57 aaa
-rw-r--r--. 1 root root 617 12月  9 15:58 fstab
-rw-r--r--. 1 root root 237 12月  9 15:58 id_rsa.pub

blob.png

復制目錄或多個目錄到一個目錄中

[root@test setuptmp]# cp -r tmp fonts mytest/
[root@test setuptmp]# ll mytest/
總用量 4
drwxr-xr-x. 2 root root   38 12月  9 15:59 fonts
drwxr-xr-x. 3 root root 4096 12月  9 15:59 tmp

blob.png

mv:移動或重命名文件

SYNOPSIS

  mv [OPTION]… [-T] SOURCE DEST

  mv [OPTION]… SOURCE… DIRECTORY

  mv [OPTION]… -t DIRECTORY SOURCE…

常用:

示例:

~]# cp /tmp/a/test/new_file /tmp/a/test/new_file2

rm:刪除文件或目錄

SYNOPSIS

  rm [OPTION]… FILE…

常用:

刪除文件

[root@test setuptmp]# rm tmp/aaabb

rm:是否刪除普通空文件 "tmp/aaabb"?y

刪除文件夾,需要-r,加了-f后不會提示。

原來目錄中有這些文件:

tmp
├── aaa
├── aaabb
├── aaab.sh
├── aaacc
├── linuxscan.sh
├── Linux_scan.sh
├── scan.sh
└── test1.sh
[root@test setuptmp]# rm -rf tmp/*
[root@test setuptmp]# ll tmp/
總用量 0

stat:查看文件狀態屬性

示例:

[root@test setuptmp]# stat /etc/passwd
  文件:"/etc/passwd"
  大小:1747            塊:8          IO 塊:4096   普通文件
設備:fd00h/64768d      Inode:403454924   硬鏈接:1
權限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
環境:system_u:object_r:passwd_file_t:s0
最近訪問:2016-12-08 23:02:03.651620059 +0800
最近更改:2016-12-08 23:01:59.963611905 +0800
最近改動:2016-12-08 23:01:59.966611911 +0800
創建時間:-

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

1、命令執行狀態返回值

返回值用于判定命令執行正確與否(0正確,非0為不正確)

[root@test setuptmp]# date
2016年 12月 09日 星期五 16:08:52 CST
[root@test setuptmp]# echo $?
0
[root@test setuptmp]# data
-bash: data: 未找到命令
[root@test setuptmp]# echo $?
127

2、命令行展開

以bash能夠解釋的符號來代替命令中的一些重復字段,一定要用{}引起來。

錯誤方式:

[root@test setuptmp]# touch aa,bb,cc,dd,ee
[root@test setuptmp]# ls
aaa  aa,bb,cc,dd,ee  aa.tmp  bb.tmp  fonts  fstab  id_rsa.pub  mytest  tmp
正確方式:
[root@test setuptmp]# touch {aa,bb,cc,dd,ee}
[root@test setuptmp]# ls
aa  aaa  aa,bb,cc,dd,ee  aa.tmp  bb  bb.tmp  cc  dd  ee  fonts  fstab  id_rsa.pub  mytest  tmp

題3:使用命令行展開完成以下練習

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

[root@test setuptmp]# ls /tmp/      
[root@test setuptmp]# touch /tmp/a_{c,d} /tmp/b_{c,d}
[root@test setuptmp]# ls /tmp/
a_c  a_d  b_c  b_d

(2)創建/tmp/mylinux下的目錄結構

[root@test setuptmp]# mkdir /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}} -pv
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/bin"
mkdir: 已創建目錄 "/tmp/mylinux/usr/sbin"
mkdir: 已創建目錄 "/tmp/mylinux/var"
mkdir: 已創建目錄 "/tmp/mylinux/var/lock"
mkdir: 已創建目錄 "/tmp/mylinux/var/log"
mkdir: 已創建目錄 "/tmp/mylinux/var/run"

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

[root@test setuptmp]# stat fstab 
  文件:"fstab"
  大?。?17             塊:8          IO 塊:4096   普通文件
設備:fd00h/64768d      Inode:269696854   硬鏈接:1
權限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
環境:unconfined_u:object_r:default_t:s0
最近訪問:2016-12-09 15:58:00.125345432 +0800
最近更改:2016-12-09 15:50:15.652338394 +0800
最近改動:2016-12-09 15:50:15.652338394 +0800
創建時間:-

輸出結果釋義:

File:文件名

Size:文件大小

Block:占據多少磁盤塊

IO Block:一個磁盤塊大小為4096k

regular empty file:常規的空文件

Device:文件所在設備主編號和次編號

Inode:inode編號

Linux:文件被硬鏈接的次數,1表示沒有硬鏈接

第一個Access:權限,屬主uid及名字,屬組gid及名字

第二個Access:文件最后一次被訪問的時間

Modify:文件的數據最后一次被修改的時間

Change:文件的元數據最后一次變化的時間

修改文件的時間戳:touch命令

touch [OPTION]… FILE…

-c: 指定的文件路徑不存在時不予創建;

-a: 僅修改access time;

-m:僅修改modify time;

-t STAMP  指定修改的時間

[[CC]YY]MMDDhhmm[.ss]

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

定義別名:

1、臨時

[root@test setuptmp]# alias
alias cp='cp -i'
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 which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@test setuptmp]# alias cls=clear
[root@test setuptmp]# alias
alias cls='clear'
alias cp='cp -i'
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 which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

2、永久

定義在~/.bashrc或者/etc/bashrc

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

[root@test setuptmp]# echo -e "當前已經登入用戶\n $(w)"         
當前已經登入用戶
  16:46:14 up 5 days, 22:20,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.50.40.203     11:23    6.00s  0.38s  0.00s w

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

[root@test setuptmp]# find  /var/  -name  "l[0-9]*[a-z]"
[root@test setuptmp]# ls /var/l[0-9]*[a-z]

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

[root@test setuptmp]# find /etc/ -name "[0-9]*[^0-9]"
[root@test setuptmp]# ls /etc/[0-9]*[^0-9]

 

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

    [root@test setuptmp]#  find /etc/ -name "[^[:alpha:]][[:alpha:]]*"

[root@test setuptmp]# ls  /etc/[^[:alpha:]][[:alpha:]]*

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

    [root@test setuptmp]#  touch /tmp/tfile-`date +%Y-%m-%d-%H-%M-%S`

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

    [root@test setuptmp]#  cp -r /etc/p*[^[:digit:]] /tmp/mytest1

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

    [root@test setuptmp]#  cp -r /etc/*.d /tmp/mytest2

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

    [root@test setuptmp]#  cp -r /etc/[lmn]*.conf /tmp/mytest3

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

(0)
oranixoranix
上一篇 2016-12-09
下一篇 2016-12-09

相關推薦

  • 利用 yum 查找某個命令屬于哪個包

    當我們在安裝一個不熟悉的命令是,會遇到個問題:Error: Nothing to do 而你又不知道該命令的是屬于哪個rom包,莫慌~我們可以借助一個叫yum的基于rpm的軟件包管理器。 以 dig 這個命令為例,當我安裝它時會出現如下情況  [root@localhost ~]# yum install dig  Loaded plug…

    Linux干貨 2016-03-27
  • Linux的啟動流程

    Linux的啟動流程大致上如下圖. 現在詳細說明一下每個步驟: 第一階段 當系統啟動時,系統首先會加載BIOS。BIOS的首先會檢查各硬件設備,當檢查完畢沒有問題之后。BIOS會根據設定的BootSequence來尋找可以引導系統的設備。一般而言,Linux是通過磁盤上MBR來引導系統的。 第二階段 MBR是Master Boot Record,是位于磁盤第…

    Linux干貨 2016-02-28
  • 網絡服務之Apache

      互聯網這個歷史已經不算很短了,它大大方便了人類獲取信息,開闊了人類的眼界,使得讓這個世界變得小了起來,人與人之間的距離感也不會存在了,娛樂也更加豐富,聽音樂、看電影等等這一系列,都能從網上進行,這些功能,都是由www服務器來提供服務,在Linux中,提供網絡的服務器有很多種,那么今天我們就講一個比較老牌,且依然能存活的服務器“阿帕奇”…

    Linux干貨 2017-01-13
  • 正則 grep查找find(xargs)練手

    1、顯示當前系統上root、fedora或user1用戶的默認shell; ~]# grep -E "^(root|fedora|user1)\>" /etc/passwd | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某單詞后面跟一組小括號的行,形如:hello(); ~]# gre…

    Linux干貨 2016-10-24
  • Linux基礎 & bash基礎特性

    Q1:描述計算機的組成及其功能。 計算機的組成:運算器、控制器、存儲設備、輸入設備、輸出設備。 運算器: 運算器是計算機中執行各種算術和邏輯運算操作的部件。運算器的基本操作包括加、減、乘、除四則運算,與、或、非、異或等邏輯操作,以及移位、比較和傳送等操作,亦稱算術邏輯部件。 存儲設備: 計算機總是需要記錄與讀取數據的,而這些數據當然不可能每次都由用戶經過鍵盤…

    Linux干貨 2016-10-30

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-12-16 15:57

    贊,整體還是不錯的,前幾個題其實可以把圖片去掉會更好一點~~加油~

欧美性久久久久