Skip to content

常见目录

img.png

常见命令

文件传输

shell
# 传输文件到 linux 上
scp E:\a.js [email protected]:/tmp/a.js
shell
# ls 列出目录下的文件
  • ls 列出目录下的文件
    • -l 更多相信参数(大小、权限、创建时间)
    • -h 以人类可读的方式列出文件大小
    • -a 包含隐藏文件
    • -t 按修改时间排序
    • -r 逆序排序
  • ln 软连接(快捷方式)
    • -s 创建软连接 ln -s hello.txt link.txt 在当前目录下创建 link.txt 文件,并链接到 hello.txt 文件
    • ln hello.txt link.txt 创建硬链接;硬链接只能指向文件,如果删除源文件,不会对硬链接文件造成影响,但软链接文件将无法访问
  • 权限
    • 组别:所有者 u、同组用户 g、其他用户 o 全部 a
    • r4 可读 w2 可写 x1 可执行
    • chmod +x hello.txt 给 hello.txt 文件添加可执行权限)(三个组都会加上 x)
    • chmod ug+x hello.txt 给 hello.txt 文件添加所有者和同组用户可执行权限
    • chmod 777 hello.txt 给 hello.txt 文件添加所有权限
  • touch 创建文件,如果存在则更新修改时间
    • touch hello.txt 创建 hello.txt 文件
  • cp 复制文件
    • cp hello.txt hello2.txt 复制 hello.txt 文件到 hello2.txt 文件
    • cp -r dir1 dir2 复制 dir1 目录到 dir2 目录
  • mv 移动文件/重命名(处于同一目录时候)
    • mv hello.txt hello2.txt 将 hello.txt 文件移动到 hello2.txt 文件
  • mkdir 创建目录
    • mkdir -p dir/dir2/dir3
  • du 磁盘使用情况/也能查看目录结构
  • rmdir 删除文件夹
  • tar 命令
    • c # 打包
    • x # 解包
    • v # 详细模式
    • z # 使用 gzip
    • tar -cvf meco.tar dist # 打包
    • tar -czvf vision_web.tar.gz dist # 打包并且压缩
    • tar -xvf meco.tar # 解包
    • tar -xzvf vision_web.tar.gz # 解包并解压

shell

shell
cat /etc/shells # 查看系统支持的 shell
echo $SHELL # 提供了关于用户默认shell环境的信息
ech0 $0 # 提供了脚本文件名或当前shell名称的信息,具体视上下文而定
name=zhangsan # 给当前会话添加有效变量,$name 进行读取(在 shell 脚本中读取不到)
export name=zhangshan # 给当前会话添加有效**环境变量**,$name 进行读取
shuf -i 1-100 -n 10 # 随机生成 1-100 之间的 10 个数
小游戏示例
shell
#!/bin/sh
echo "欢迎来到猜数小游戏,请输入用户名"
read name # 读取用户输入,并赋值给变量name
echo "hello $name"
# ./game.sh arg1 执行脚本,并传递数据 arg1,那么在 shell 中,就可以使用 $1 读取该变量
number=$(shuf -i 1-100 -n 1)
# while [[ $guess -ne $number ]] # 不相等的时候
while true
do
echo "请输入数字"
read guess
    if [[ $guess -eq $number ]]; then
        echo "猜对了!,是否继续(y/n)"
        read answer
        if [[ $answer = "y" || $answer = "Y" ]]; then
            number=$((RANDOM % 100 + 1)) # 生成随机数 1-10
            continue
        else
            break
        fi
    elif [[ $guess -gt $number ]]; then
        echo "猜大了"
    else
        echo "小了"
    fi
done

vim

操作
shell
# .vimrc 配置文件

# 插入模式 ===========
# i 前插   a 后插
# I 行首   A 行尾
# o 下一行  O 上一行

# 文本跳转
# ^ 行首  $ 行尾

# 文本操作
# yy 复制  dd 删除  p 粘贴   3p 粘贴三次  3yy 复制3行内容
# u 撤销  ctrl + r 重做

# 尾行模式 ===========

# :set nu 显示行号
# :set nonu 不显示行号
# :set ic 忽略大小写

# 命令模式 ===========

# 光标移动
# l 右  h 左  j 下  k 上

# 翻页
# Ctrl + f 下一页    Ctrl + b 上一页     Ctrl + d 下半页      Ctrl + u 上半页
# G 跳转到最后一行 gg 跳转到第一行  100g 跳转到第100行
# 查找替换
# / 查找  n 下一个  N 上一个    `/hello\C` 查找 `hello` 并且忽略大小写
# :s/hello/world/g 将当前行全部的 hello 替换成 world
# :1,5s/hello/world/g 将第1-5行全部的 hello 替换成 world
# :1,$s/hello/world/g 将文件内全部的 hello 替换成 world

windows

  • 查看端口占用并中止
    • netstat -ano | findstr :7300
    • taskkill /F /PID 1234

mac

  • 查看文件占用
shell
# disk usage
# -d --max-depth 递归层级
# -h --human-readable 以易读的单位(如 K、M、G)自动转换文件大小
du -d 1 -h | sort -h