Linux命令学习笔记
lsgrep和wc。这些命令的组合能够分别统计文件的数量、包含子目录的文件数量,以及目录(文件夹)的数量。
一、统计文件夹下的文件个数
在Linux系统中,可以通过组合使用以下三个命令来统计目录下文件和文件夹的数量:ls、grep和wc。这些命令的组合能够分别统计文件的数量、包含子目录的文件数量,以及目录(文件夹)的数量。
1. 统计当前目录下文件的数量(不包括目录)
$ ls -l | grep "^- " | wc -l
这条命令统计当前目录中普通文件的数量,不包括子目录中的文件。
2. 统计当前目录及其子目录下的文件数量
$ ls -lR | grep "^- " | wc -l
该命令统计当前目录及其所有子目录中的普通文件数量。
3. 统计某目录下的文件夹(目录)数量(包括子目录)
$ ls -lR | grep "^d" | wc -l
此命令统计当前目录及其子目录中的文件夹数量。
命令解析:
-
ls -l
以长列表形式显示目录下的文件信息。每一行对应一个文件或目录。ls -lR则递归列出所有文件和子目录的内容。 -
grep "^- "
通过正则表达式过滤ls的输出,仅保留普通文件的列表。类似地,grep "^d"用于过滤并仅保留目录。 -
wc -l
统计输出信息的行数,每一行对应一个文件或目录,因此行数即为文件或目录的数量。
二、目录与文件管理
1.文件和目录的查看
- 查看指定目录下的所有文件:
ls [directory] - 以详细列表形式显示文件:
ls -l - 按修改时间倒序显示文件:
ls -ltr - 通配符使用(如星号 *):
ls *na*—— 查找文件名中包含“na”字符的文件。
2.文件权限管理
- 更改文件权限:
chmod [para] [filename] - 增减文件权限:
- 增加执行权限:
chmod +x [filename] - 移除写权限:
chmod -w [filename]
- 增加执行权限:
3.目录与文件的创建与删除
- 创建目录:
mkdir [directoryName] - 删除文件或目录:
rm [-rf] [filename or directoryName]
4.目录与文件的操作
- 查看当前目录路径:
pwd - 目录切换:
- 切换到指定路径:
cd [absolutePath] - 上级目录:
cd .. - 当前目录:
cd . - 上次访问的目录:
cd - - 用户根目录:
cd ~
- 切换到指定路径:
- 创建空文件:
touch [filename] - 移动文件/目录:
mv [filename] [object_directoryName] - 重命名文件/目录:
mv [old_filename] [new_filename] - 复制文件/目录:
cp [source_filename] [dest_filename] - 快速文件名补全:输入文件名开头字符后,按
Tab键可补全名称。
5.文件和目录的搜索
- 查找文件或文件夹:
find [directory] –name [filename] - 在文件中搜索字符串:
grep “[string]” –r [filename]
6.文件内容查看
- 查看文件全部内容:
cat [file_name] - 显示文件开头内容:
head [file_name]- 指定行数显示:
head –n [line_num] [file_name]
- 指定行数显示:
- 显示文件结尾内容:
tail [file_name]- 指定行数显示:
tail –n [line_num] [file_name] - 动态刷新显示:
tail –f [file_name]
- 指定行数显示:
- 分页显示文件内容:
more [file_name]
三、 压缩与解压缩
示例:
tar -czvf COAWST-CICE_FCST.tar.gz COAWST-CICE_FCST/
这条命令将 COAWST-CICE_FCST/ 目录下的内容打包并使用 gzip 压缩为 COAWST-CICE_FCST.tar.gz 文件。
tar 是一个用于打包文件或文件夹的工具,结合压缩工具如 gzip、bzip2、xz 等可以创建压缩包。选项说明:
-c:创建一个新的压缩文件。-z:通过gzip压缩文件。-v:显示详细的压缩过程。-f:指定压缩文件的名称。
示例:
tar -zxvf COAWST-CICE_FCST.tar.gz
这条命令解压缩 COAWST-CICE_FCST.tar.gz 文件到当前目录。
解压缩文件时,根据不同的压缩格式,选择不同的选项:
-x:表示解压缩。-z:表示通过gzip解压缩。-j:表示通过bzip2解压缩。-J:表示通过xz解压缩。
其他常见解压缩命令:
- 解压
.tar文件:tar -xvf folder.tar - 解压
.tar.bz2文件:tar -jxvf folder.tar.bz2 - 解压
.tar.xz文件:tar -Jxvf folder.tar.xz - 解压
.zip文件:unzip folder.zip - 打包:
tar –cvf jpg.tar *.jpg - 打包并压缩:
tar –czf jpg.tar.gz *.jpg - 解压:
tar -xf jpg.tar - 解压压缩包:
tar -zxf jpg.tar.gz
四、文件传输命令:
示例:
sftp> put /Users/Desktop/COAWST-CICE_FCST.tar.gz /public/home/elpt_2022_000100/
该命令将本地文件 COAWST-CICE_FCST.tar.gz 上传到远程路径 /public/home/elpt_2022_000100/。
sftp是用于在不同计算机之间通过 SSH 传输文件的工具。put命令用于将本地文件上传到远程服务器。
1.使用 scp 命令
-
文件上传:
- 使用
scp将本地文件上传到远程主机的指定目录。 - 例子:
可以同时修改远程文件的名称。scp /本地路径/文件名 用户名@远程主机IP:/远程路径/
- 使用
-
上传目录:
- 使用
-r选项可以递归上传整个目录,包含目录及其内容。 - 例子:
scp -r /本地路径/目录名 用户名@远程主机IP:/远程路径/
- 使用
-
文件下载:
- 通过
scp从远程主机下载文件到本地。 - 例子:
scp 用户名@远程主机IP:/远程路径/文件名 /本地路径/
- 通过
-
下载目录:
- 使用
-r选项递归下载整个目录及其内容。
- 使用
2.使用 sftp 命令
-
连接远程主机:
- 通过
sftp命令与远程主机建立连接。 - 例子:
sftp 用户名@远程主机IP
- 通过
-
文件上传:
- 使用
put命令将本地文件上传到远程目录。 - 例子:
put /本地路径/文件名 /远程路径/
- 使用
-
上传目录内容:
- 使用
put -r上传整个目录下的内容,目录后要加/.或/*。 - 例子:
put -r /本地路径/目录/* /远程路径/
- 使用
-
文件下载:
- 使用
get下载远程主机上的文件到本地。 - 例子:
get /远程路径/文件名 /本地路径/
- 使用
-
下载目录内容:
- 使用
get -r下载远程主机的整个目录或目录下的内容。
- 使用
-
注意事项:
sftp命令不要以;结尾,否则会导致命令失败。- 下载时注意目录中的文件不会被覆盖,但已有文件的内容可能会被清空。
这些命令适用于远程主机文件的传输和管理,通过 scp 和 sftp 命令,你可以轻松在本地主机和远程主机之间交换文件和目录。
更多推荐


所有评论(0)