分類
Linux

linux中bash shell對文件進行管理的總結

=============bash shell對文件進行管理==============
創建、複製、刪除、移動、查看、編輯、壓縮、權限、查找

一、Linux目錄結構的特點
視窗: 以多根的方式組織文件 C:\ ð:\ Ë:\
Linux: 以單根的方式組織文件 /

/目錄結構:
[root@gaolei ~]# LS /
倉開發的lib媒體淨根SRV USR
開機等lib64的其它選擇sbin目錄SYS變種
cgroup中主場輸給+發現MNT PROC SELinux的TMP

bin 普通用戶使用的命令 /bin/ls, /斌/日期
dev 設備文件 /dev/sda,/開發/ tty1上,開發/ TTY2中,/ dev / PTS / 1
home 普通用戶家目錄小區
lost+found 孤兒文件
proc 虛擬的文件系統,反映出來的是內核,進程信息或實時狀態
sbin 管理員使用的命令
usr 系統文件,相當於C:\視窗
boot 存放的啟動相關的文件,例如kernel,蠐螬(引導裝載程序)
etc 配置文件
lib 庫文件Glibc
lib64 庫文件Glibc

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

root root用戶的HOME
tmp 臨時文件(主要是程序產生的臨時文件)
var 存放的是一些變化文件,比如數據庫,日誌,郵件….
如:
MySQL的: /無功/ lib中/ MySQL的
VSFTPD: /VAR / FTP
郵件: /VAR / spool / mail中
cron的: /無功/線軸/ cron的
日誌: /無功/日誌

二、路徑
絕對路徑: 從/(根)開頭的路徑 cd /home cd ~alice
相對路徑: 相對於當前目錄開始 cd ..

. 鏈接到當前目錄
.. 鏈接到上一級目錄
~ 當前用戶的家目錄
======

三、文件管理
文件管理一:
cd 改變目錄
cd 絕對路徑 cd /home/alice cd ~alice
cd 相對路徑 cd ..
================================================== =====
cd 專用:
光盤 – 返回上次目錄
cd 直接回家
================================================== =====

文件管理之:創建/複製/移動/刪除
==創建
文件 touch
# touch file1.txt //無則創建,有則修改時間
# 觸摸/home/file10.txt
# -t觸摸 1501010001 2018.RMVB
修改文件時間 語法:
-ŤSTAMP
使用 [[CC]YY]MMDDHHMM[.SS] 而不是當前的時間

目錄 mkdir
# MKDIR DIR1
# 的mkdir /家庭/ DIR2 /家庭/ DIR3
# 的mkdir /家庭/{DIR4,dir5}
# MKDIR -v /家/{DIR6,dir7}
MKDIR: 已創建目錄 “/home/dir6”
MKDIR: 已創建目錄 “/home/dir7”
# mkdir -p /home/dir8/111/222 //包括其父母的創建

==複製 cp
用法: cp [選項]… [-ŧ] SOURCE DEST
要么: cp [選項]… 資源… 目錄
要么: cp [選項]… -Ť目錄源…
複製源向DEST, 或多個源(小號) 到目錄.
cp 源 目標

[根@楊家將〜]# CP -v install.log的/家庭/ DIR1
[根@楊家將〜]# CP -v install.log的/home/dir1/yang.txt
[根@楊家將〜]# CP -r uplayer /的/ home / DIR1
[根@楊家將〜]# CP install.log的/家庭/ DIR2
[根@楊家將〜]# CP my.jpg !$
CP my.jpg /家庭/ DIR2
[根@楊家將〜]# CP -r在/ etc / sysconfig / network中的腳本/的ifcfg-eth0的/ etc / passwd文件的/etc/grub.conf / etc / hosts文件 .
[根@楊家將〜]# \CP -r在/ etc / sysconfig / network中的腳本/的ifcfg-eth0的/ etc / hosts文件/ etc / passwd文件/ etc / shadow中 .

擴展用法:
[根@楊家將〜]# CP -rfv / etc / hosts文件{,.舊}
“/ etc / hosts文件” - > “/etc/hosts.old”
[根@楊家將〜]# CP -rvf的/ etc / sysconfig / network中的腳本/的ifcfg-eth0的{,.舊}
“在/ etc / sysconfig / network中的腳本/的ifcfg-eth0的” - > “在/ etc / sysconfig / network中的腳本/ I

================================================== ======
小知識:root用戶使用cp (默認有一個別名 alias cp=’cp -i’)
1. /斌/ CP -rf my.jpg /家庭/ DIR2
2. # unalias CP
# CP -rf my.jpg /家庭/ DIR2
3. # \CP -rf install.log的/家庭/ DIR2
================================================== ======

==移動等。
mv 源 目標
# mv file2 /home/dir3 將file2移動到/home/dir3裡
# mv file4 file5 將file4重命名為file5,當前位置裡的移動就是重命名

==刪除 rm
示例:刪除/home/dir1
# CD /家
# 室射頻DIR1
-r 遞歸
-f force強制
-v 詳細過程

文件管理之:查看文件內容
==文本文件 (貓少多頭尾的grep)
/etc / hosts文件
/等/ sysconfig / network中
/等/ sysconfig / network中的腳本/的ifcfg-eth0的
/etc / passwd文件
/etc / shadow中
/etc / group文件
/等/ grub.conf中
/等/ resolv.conf中
/var/log/messages //系統的主日誌文件

cat
-n 顯示行號
-A 包括控製字符(換行符)linux $ 窗戶^ M $
================================================== ======
擴展知識:
dos2unix 將Windows格式的文件轉換成Unix格式
unix2dos 將Unix格式的文件轉換成Windows格式
例如
# unix2dos文件1
# DOS2UNIX的文件2
================================================== ======

更少頭尾
# 頭/ etc / passwd文件
# 頭 -2 /etc / passwd文件
# 尾/ etc / passwd文件
# 尾巴 -1 /etc / passwd文件
# tail -f /var/log/messages //-f 動態查看文件的尾部
# logger yangsheng

grep 針對文件內容進行過濾
# grep的“根’ /etc / passwd文件
# grep的 –顏色“根’ /etc / passwd文件
# grep的 –色'^根’ /etc / passwd文件
# grep的 –色'的bash $’ /etc / passwd文件

==二進製文件 (字符串的grep)
# 串/斌/ LS

文件管理之:修改文件內容
我們===> vim 文件編輯器
# VIM /boot/grub/grub.conf文件
# VIM在/ etc / sysconfig / network中的腳本/的ifcfg-eth0的

命令模式:
一個. 光標定位
HJKL
0 $
GG摹
3G 進入第三行
/串(n N 可以循環的) 快速定位到某一行

b. 文本編輯(少量)
該複製YY 3YY NI ASB (以行為單位)
d 刪除 dd 3dd dgg dG (以行為單位)
p 粘貼
x 刪除光標所在的字符
D 從光標處刪除到行尾
u 撤銷
^r redo 重做
r 可以用來修改一個字符

C. 進入其它模式
a 進入插入模式
i 進入插入模式
o 進入插入模式
A 進入插入模式

: 進入末行模式
^v 進入可視塊模式
R 進入替換模式

插入模式:
^ p

末行模式:
一個. 保存退出
:10 進入第10行
:在保存
:q 退出
:wq 保存並退出
:W¯¯! 強制保存
:q! 不保存並退出
:WQ! 強制保存退出
😡 保存並退出

b. 查找替換
:範圍 s/old/new/選項
:1,5 s/Note/yyy/ 從1-5行的Note 替換為yyy
:5,$ s/Note/yyy/ $表示最後一行
:1,$ S /到/ uplooking / G = :% s/to/uplooking/g %表示全文 g表示全局
:4,9 s/^#// 4-9行的以#開頭的替換為空
:% 小號#為/ dev / sda上#在/ var / CCC#摹
:,8 s/to/uplooking/ 從當前行到第8行

C. 讀入文件/寫文件
:w /aaa.txt 另存為aaa.txt
:1,3 W / 2.txt
:R / etc / hosts中

ð. 設置環境
臨時設置:
:set nu 設置行號
:set ic 不區分大小寫
:set nonu 取消設置行號
:設置noic

永久的環境:
/etc/vimrc 影響所有系統用戶
~root/.vimrc 影響某一個用戶
# VIM的〜/ .vimrc
集IC
未設定

# vim -O /etc/hosts /etc/grub.conf ^w 按兩次切換
# vimdiff grub.conf /etc/grub.conf 對比文件,^w 按兩次切換
# VIM -p / etc / hosts中的/etc/grub.conf ^ PgUp鍵, ^ PgDn鍵

本文由 落格博客 原創撰寫:落格博客 » linux中bash shell對文件進行管理的總結

轉載請保留出處和原文鏈接:https://www.logcg.com/archives/500.html

發表評論

您的電子郵件地址不會被公開. 必填字段標 *