1. 程式人生 > >1.文件管理

1.文件管理

創建/復制/移動/刪除/查看file

file 查看文件數據類型

#file +文件

cat
-n 顯示行號
-A 包括控制字符(換行符/制表符)
linux $
Windows ^M$

grep 針對文件內容進行過濾
[root@Cly ~]# grep ‘root‘ /etc/passwd
[root@Cly ~]# grep ‘^root‘ /etc/passwd
[root@Cly ~]# grep ‘bash$‘ /etc/passwd
[root@Cly ~]# grep ‘failure‘ /var/log/secure

-----

7種文件類型
查看文件類型 : ls -l 文件名

  • 普通文件
    d 目錄文件
    b 塊設備 block /dev/sda /dev/sda1 /dev/sr0
    c 字符設備 終端 tty 查看終端 /dev/pts/0 #tty //查看字符設備名稱
    l symbolic link 符號連接 快捷方式/軟連接
    p pipe 管道 本地進程間通信的一種方式
    s socket 套接字 網絡通信的一種方式

-----

/目錄結構: FSH (Filesystem Hierarchy Standard)

bin 普通用戶使用的命令 /bin/ls, /bin/date
sbin 管理員使用的命令 /sbin/service
dev 設備文件 /dev/sda,/dev/sda1,/dev/tty1,/dev/tty2,/dev/pts/1, /dev/zero, /dev/null, /dev/random

root root用戶的HOME
home 普通用戶家Base目錄
proc 虛擬的文件系統,反映出來的是內核,進程信息或實時狀態
usr 系統文件,相當於C:\Windows
/usr/local 軟件安裝的目錄,相當於C:\Program
/usr/bin 普通用戶使用的應用程序
/usr/sbin 管理員使用的應用程序
/usr/lib 庫文件Glibc 32bit
/usr/lib64 庫文件Glibc 64bit
boot 存放的系統啟動相關的文件,例如kernel,grub(引導裝載程序)
etc 配置文件
系統相關如網絡/etc/sysconfig/network /etc/hostname
應用相關配置文件如/etc/ssh/sshd_config...

lib 庫文件Glibc
lib64 庫文件Glibc

tmp 臨時文件(全局可寫:進程產生的臨時文件)

var 存放的是一些變化文件,比如數據庫,日誌,郵件....
mysql: /var/lib/mysql
vsftpd: /var/ftp
mail: /var/spool/mail
cron: /var/spool/cron
log: /var/log
臨時文件: /var/tmp(進程產生的臨時文件)

==設備(主要指存儲設備)掛載目錄==
media 移動設備默認的掛載點
mnt 手工掛載設備的掛載點
misc automount進程掛載
net automount進程掛載

-----

命令存儲位置:

/usr/bin 普通用戶使用的應用程序
/usr/sbin 管理員使用的應用程序

庫文件存儲位置:

/usr/lib 庫文件Glibc
/usr/lib64 庫文件Glibc

-----文件管理之:創建/復制/移動/刪除

==創建
文件 touch

[root@Cly ~]# touch file1.txt //無則創建,有則修改時間
[root@Cly ~]# touch file3 file4
[root@Cly ~]# touch /home/file10.txt
[root@Cly ~]# touch /home/file5 file6
[root@Cly ~]# touch /home/{zhuzhu,gougou}
[root@Cly ~]# touch file{1..20}
[root@Cly ~][root@Cly ~]# touch file{a..c}
[root@Cly ~]# touch yang{a,b,c} //{}集合,等價touch yanga yangb yangc

目錄 mkdir
[root@Cly ~]# mkdir dir1
[root@Cly ~]# mkdir /home/dir2 /home/dir3
[root@Cly ~]# mkdir /home/{dir4,dir5}
[root@Cly ~]# mkdir -v /home/{dir6,dir7}
[root@Cly ~]# mkdir -v /hoem/dir8/111/22
[root@Cly ~]# mkdir -pv /hoem/dir8/111/222 //包括其父母的創建,不會有任何消息輸出
[root@Cly ~]# mkdir -pv /home/{yang/{dir1,111},tianyun}

==復制 cp
Usage: cp [OPTION]... [-T] SOURCE DEST
[root@Cly ~][root@Cly ~]# cd
[root@Cly ~]# mkdir /home/dir{1,2}
[root@Cly ~]# cp -v anaconda-ks.cfg /home/dir1 //目錄
[root@Cly ~]# cp -v anaconda-ks.cfg /home/dir1/yang.txt //文件
[root@Cly ~]# cp -rv /etc /home/dir1
[root@Cly ~]# cp -v anaconda-ks.cfg /home/dir90 //沒有/home/dir90
[root@Cly ~]# cp -v anaconda-ks.cfg /home/dir2
[root@Cly ~]# cp -v file1 !$
[root@Cly ~]# cp -rv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/passwd /etc/hostname /home/dir2 //將多個文件拷貝到同一個目錄
[root@Cly ~]# cp -rv /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/passwd /etc/hostname /etc/hosts .
[root@Cly ~]# cp -r /etc /tmp
[root@Cly ~]# cp -rf /etc /tmp

==移動 mv
Usage: mv [OPTION]... [-T] SOURCE DEST
[root@Cly ~][root@Cly ~][root@Cly ~]# mv file1 /home/dir3 將file2移動到/home/dir3
[root@Cly ~][root@Cly ~]# mv file2 /home/dir3/file20 將file2移動到/home/dir3,並改名為file20
[root@Cly ~]# mv file4 file5 將file4重命名為file5,當前位置的移動就是重命名

==刪除 rm
示例1:
手動刪除: /home/dir1

cd /home

rm -rf dir1

-r 遞歸
-f force強制
-v 詳細過程
腳本刪除: /home/dir1
rm -rf /home/dir1

-----文件管理之:查看文件內容

/etc/profile //設置系統環境變量
/etc/bashrc //影響bash shell環境
/var/log/messages //系統主日誌文件
/var/log/secure //跟安全相關的日誌如ssh登錄,本地登錄...

1.文件管理