Linux中命令收集

发布于:2025-09-02 ⋅ 阅读:(19) ⋅ 点赞:(0)

移动命令

移动文件
移动单个文件:mv 源文件 目标路径
移动多个文件:mv 文件1 文件2 文件3 目标目录/
移动整个目录:mv 源目录 目标路径
常用选项
-i:交互模式,覆盖前询问确认 (默认行为,当别名设置了 -i 时)
-f:强制移动,不询问直接覆盖
-n:不覆盖已存在文件
-v:显示详细操作过程

查找文件的常用命令

几种最常用的文件查找命令:

1. find 命令 - 最强大的文件查找工具
基本语法:

bash
find [路径] [选项] [表达式]
常用示例:

bash
# 在当前目录及其子目录中查找名为 filename 的文件
find . -name "filename"

# 在根目录下查找所有 .conf 文件
find / -name "*.conf"

# 查找最近 7 天内修改过的文件
find /path -mtime -7

# 查找大于 10MB 的文件
find / -size +10M

# 查找并删除特定文件(谨慎使用)
find /path -name "*.tmp" -delete

# 查找文件并执行命令(如显示详细信息)
find /path -name "*.log" -exec ls -l {} \;
2. locate 命令 - 快速查找(基于数据库)
bash
# 查找文件(速度更快,基于预建的数据库)
locate filename

# 更新 locate 数据库(需要 root 权限)
sudo updatedb
3. which 命令 - 查找可执行文件路径
bash
# 查找命令的安装位置
which python
which git
4. whereis 命令 - 查找二进制、源码和手册页
bash
whereis python
5. grep 命令 - 在文件中查找内容
bash
# 在当前目录递归查找包含 "search_text" 的文件
grep -r "search_text" .

# 忽略大小写
grep -ri "search_text" /path
实用组合技巧
bash
# 查找并统计找到的文件数量
find /path -name "*.jpg" | wc -l

# 查找并复制到目标目录
find /path -name "*.pdf" -exec cp {} /target/dir \;

# 查找并打包压缩
find /path -name "*.log" -exec tar -czvf logs.tar.gz {} +
注意事项
find 是实时查找,速度较慢但结果准确

locate 基于数据库,速度快但可能不是最新结果

使用 find 搜索系统文件需要 root 权限

通配符使用:

* 匹配任意字符

? 匹配单个字符

[abc] 匹配 a、b 或 c

按文件类型查找
bash
# 查找目录
find /path -type d -name "dirname"

# 查找普通文件
find /path -type f -name "filename"

# 查找符号链接
find /path -type l -name "linkname"
选择哪种查找方法取决于你的具体需求:实时性、速度、精确度等。

退回之前目录的命令

在 Linux 终端中,有几种方法可以返回到之前所在的目录:
1. cd - 命令 (最常用)
bash

复制

下载
cd -
这个命令会返回到你上一次所在的目录,相当于"后退"功能。
示例:
bash

复制

下载
/home/user$ cd
 /etc
/etc$ 
cd
 -  
/home/user
/etc$ 
cd
 -
/home/user
2. pushd 和 popd 命令 (目录栈管理)
这对命令允许你维护一个目录历史栈:
bash

复制

下载
# 将当前目录压入栈并切换到新目录
pushd
 /path/to/new/dir

# 返回上一个目录(弹出栈顶)
popd
3. OLDPWD 环境变量
bash

复制

下载
cd $OLDPWD
这与 cd - 效果相同,因为 cd - 实际上是 cd $OLDPWD 的快捷方式。
4. 使用历史命令
按 Ctrl+R 然后输入 cd 可以搜索历史命令,找到之前的 cd 命令。
实用技巧
1. 查看目录历史:
bash

复制

下载
dirs -v
这会显示目录栈的内容。
2. 结合使用:
bash

复制

下载
cd
 /very/long/path
cd
 /another/long/path
cd -  # 回到 /very/long/path
cd -  # 又回到 /another/long/path
3. 在脚本中使用:
bash

复制

下载
old_dir=$(pwd)
cd
 /some/dir
# 做一些操作
cd "$old_dir"  # 返回原目录
记住 cd - 是最简单常用的方法,而 pushd/popd 更适合需要记住多个目录位置的复杂场景。

Linux 中复制一行命令的方法

在 Linux 终端中有多种方法可以复制一行命令,以下是几种常用方式:

1. 使用鼠标操作(在图形界面终端中)
方法1:直接拖动鼠标选中命令,然后右键选择"复制"或使用 Ctrl+Shift+C

方法2:三击鼠标左键可以快速选中整行

2. 使用键盘快捷键
复制:Ctrl+Shift+C

粘贴:Ctrl+Shift+V

3. 命令行历史操作
按 Ctrl+R 然后输入部分命令内容可以搜索历史命令

使用上下箭头键浏览历史命令

history 命令查看所有历史命令,然后使用 !行号 执行特定命令

4. 使用 xclip 工具(需要先安装)
bash
# 安装 xclip
sudo apt-get install xclip  # Debian/Ubuntu
sudo yum

在 Vim 中复制一行命令的多种方法

Vim 提供了多种复制文本(yank)的方式,以下是复制一行或部分内容的常用方法:

1. 复制整行
yy 或 Y - 复制当前行

vim
yy   " 复制当前行
[n]yy - 复制从当前行开始的 n 行

vim
3yy  " 复制当前行及下面2行(共3行)
2. 复制到剪贴板(系统剪贴板)
"+yy - 复制当前行到系统剪贴板(可用于粘贴到其他程序)

vim
"+yy  " 复制当前行到系统剪贴板
3. 复制部分内容
v + 移动光标 + y - 可视化模式选择后复制

vim
v    " 进入可视化模式
j/k  " 向下/上移动选择
y    " 复制选中内容
V + y - 复制选中的整行(行可视化模式)

vim
V    " 进入行可视化模式
y    " 复制选中行
4. 复制到特定寄存器
"ayy - 复制当前行到寄存器 a

vim
"ayy  " 复制当前行到寄存器a
5. 粘贴复制的内容
p - 在光标后粘贴

P - 在光标前粘贴

"+p - 从系统剪贴板粘贴

实用技巧
复制后立即粘贴:

vim
yyp   " 复制当前行并粘贴到下一行
复制到文件末尾:

vim
:$put   " 将最后一次复制的内容粘贴到文件末尾
查看寄存器内容:

vim
:reg    " 显示所有寄存器内容
复制到行尾:

vim
y$      " 从光标位置复制到行尾
注意:Vim 的复制(yank)内容默认存储在 Vim 的内部寄存器中,如果要与系统剪贴板交互,需要使用 "+ 寄存器(前提是 Vim 编译时支持了剪贴板功能)。

网站公告

今日签到

点亮在社区的每一天
去签到