最簡單的查看方法可以使用ls -ll、ls-lh命令進行查看,當使用ls -ll,會顯示成位元組大小,而ls- lh會以KB、MB等為單位進行顯示,這樣比較直觀一些。
通過命令-h –max-depth=1 *,可以查看當前目錄下各文件、文件夾的大小,這個比較實用。查詢當前目錄總大小可以使用 -sh,其中s代表統計匯總的意思,即只輸出一個總和大小。
Linux
全稱GNU/Linux,是一種免費使用和自由傳播的類UNIX操作系統,其內核由林納斯·本納第克特·托瓦茲於1991年10月5日首次發布,它主要受到Minix和Unix思想的啟發,是一個基於POSIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的Unix工具軟體、應用程序和網路協議。它支持32位和64位硬體。
❷ linux下怎樣比較兩個目錄下所有文件是否有區別
使用diff命令即可
diff path1 path2
實例如下:
[root@mpf202 mao]# mkdir /mao1
[root@mpf202 mao]# mkdir /mao2
[root@mpf202 mao]# diff /mao1 /mao2
[root@mpf202 mao]# touch /mao1/test
[root@mpf202 mao]# diff /mao1 /mao2
Only in /mao1: test
[root@mpf202 mao]#
❸ linux 查看文件和文件夾大小
1、最簡單的查看方法可以使用ls -ll、ls-lh命令進行查看,當使用ls -ll,會顯示成位元組大小,而ls- lh會以KB、MB等為單位進行顯示,這樣比較直觀一些。
2、通過命令 -h –max-depth=1 *,可以查看當前目錄下各文件、文件夾的大小,這個比較實用。
3、查詢當前目錄總大小可以使用 -sh,其中s代表統計匯總的意思,即只輸出一個總和大小。
4、同樣,通過命令 -h –max-depth=0 *,可以只顯示直接子目錄文件及文件夾大小統計值。
5、如果只想查看指定目錄的總大小,可以使用 -sh 目錄名稱。
6、對於指定文件夾也可以指定顯示層次深度,如 -h --max-depth=0 software/及 -h --max-depth=1 software/
❹ linux 比較兩個文件夾提取不同的文件
#!/bin/bash
#定義目錄變數,便於引用
A=/tmp/A
B=/tmp/B
C=/tmp/C
#顯示B目錄文件,按列顯示,便於for循環時按行讀取
ls"$B"|awk'{print$n}'>line
#主程序
forfilenamein`catline`
do
#!-f判斷文件名-d判斷目錄/是否在路徑下存在,如果精確匹配需要用到md5sum!
if[!-f"$A"/"$filename"];then
#提示信息,可刪除
echo$filename在"$A"不存在,正復制到"$C"目錄!
#cp-rf在C目錄不存在時直接創建
cp-rf"$B"/$filename"$C"
fi
done
#清除生成的文件列表文件
rm-rfline
#!/bin/bash
A=/tmp/A
B=/tmp/B
C=/tmp/C
ls"$B"|awk'{print$n}'>line
forfilenamein`catline`
do
if[!-f"$A"/"$filename"];then
echo$filename在"$A"不存在,正復制到"$C"目錄!
cp-rf"$B"/$filename"$C"
fi
done
rm-rfline
❺ linux如何比較兩個文件夾的差異,然後復制差異文件到另一個文件夾
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
# 定義目錄變數,便於引用
A=/tmp/A
B=/tmp/B
C=/tmp/C
# 顯示B目錄文件,按列顯示,便於for循環時按行讀取
ls "$B"|awk '{print $n}' >line
# 主程序
for filename in `cat line`
do
# ! -f 判斷文件名 -d 判斷目錄/ 是否在路徑下存在,如果精確匹配需要用到md5sum!
if [ ! -f "$A"/"$filename" ]; then
# 提示信息,可刪除
echo $filename 在"$A"不存在,正復制到"$C"目錄!
# cp -rf 在C目錄不存在時直接創建
cp -rf "$B"/$filename "$C"
fi
done
# 清除生成的文件列表文件
rm -rf line
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/bash
A=/tmp/A
B=/tmp/B
C=/tmp/C
ls "$B"|awk '{print $n}' >line
for filename in `cat line`
do
if [ ! -f "$A"/"$filename" ]; then
echo $filename 在"$A"不存在,正復制到"$C"目錄!
cp -rf "$B"/$filename "$C"
fi
done
rm -rf line
❻ 怎麼快速對比兩個Linux文件夾
1、藉助diff命令 diff -ruNa s1 s2其中的s1和s2就是要比較的目錄 2、藉助gui工具diffmerge
❼ 在Linux中目錄和文件有什麼區別和聯系
一、存儲的數據不同
普通文件:存儲普通數據,一般就是字元串。
目錄文件:存儲了一張表,該表就是該目錄文件下,所以文件名和索引的映射關系。
二、許可權不同
1、對文件的許可權
r:可以獲得這個普通文件的名字和內容
w:可以對文件進行增刪改的操作
x:該文件是否具有被執行的許可權
可以把此文件提請內核啟動為一個進程,即可以執行此文件。
2、對目錄的許可權
r:可以使用ls查看此目錄中文件列表
w:可在此目錄中創建文件,也可以刪除此目錄中的文件,而和此被刪除的文件的許可權無關
x:可以cd進入此目錄,可以使用ls-l查看此目錄中文件元數據,屬於目錄的可訪問的最小許可權
X:只給目錄x許可權,不給無執行許可權的文件x許可權
對於目錄文件來說,rwx的意義是:
r-x:可以進入cd該目錄,可以獲得該目錄下存儲情況,但是不能修改這個目錄內部存儲的文件的名字,也不能在該目錄下新建文件和目錄。
-wx:可以進入cd該目錄,但是看不到該目錄下的存儲情況,可以往該目錄下添加、修改、刪除文件。可以通過cat來讀取該目錄下的文件or目錄的內容,由於得不到該目錄下存儲了那些文件,在不知情的情況下只能通過猜,cat+文件名獲得文件內容,所以這樣依然不保密。
--x:可以進入cd該目錄,看不到存儲情況,也不能往該目錄下添加、修改、刪除文件。但是依然可以通過cat+xx來獲得該目錄下的文件的內容。
rw-:不能進入cd該目錄,用ls僅僅可以獲得文件名和目錄名,因為獲取不到這些文件的inode號,當然也不能獲得該目錄下的文件的內容。不能往該目錄下添加、修改、刪除文件。
❽ linux如何比較兩個文件夾的差異,然後復制差異文件到另一個文件夾
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
#
定義目錄變數,便於引用
A=/tmp/A
B=/tmp/B
C=/tmp/C
#
顯示B目錄文件,按列顯示,便於for循環時按行讀取
ls
"$B"|awk
'{print
$n}'
>line
#
主程序
for
filename
in
`cat
line`
do
#
!
-f
判斷文件名
-d
判斷目錄/
是否在路徑下存在,如果精確匹配需要用到md5sum!
if
[
!
-f
"$A"/"$filename"
];
then
#
提示信息,可刪除
echo
$filename
在"$A"不存在,正復制到"$C"目錄!
#
cp
-rf
在C目錄不存在時直接創建
cp
-rf
"$B"/$filename
"$C"
fi
done
#
清除生成的文件列表文件
rm
-rf
line
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/bin/bash
A=/tmp/A
B=/tmp/B
C=/tmp/C
ls
"$B"|awk
'{print
$n}'
>line
for
filename
in
`cat
line`
do
if
[
!
-f
"$A"/"$filename"
];
then
echo
$filename
在"$A"不存在,正復制到"$C"目錄!
cp
-rf
"$B"/$filename
"$C"
fi
done
rm
-rf
line