Linux 常用命令
本文最后更新于:2023年2月20日 中午
Linux 统计文件夹下的文件数目
Linux 下有三个命令:ls
、grep
、wc
。通过这三个命令的组合可以统计目录下文件及文件夹的个数。
- 统计当前目录下文件的个数(不包括目录)
ls -l | grep "^-" | wc -l
- 统计当前目录下文件的个数(包括子目录)
ls -lR | grep "^-" | wc -l
- 查看某目录下文件夹 (目录) 的个数(包括子目录)
ls -lR | grep "^d" | wc -l
Linux 下添加虚拟内存
查看内存可以用命令
free -h
使用 dd 命令,来创建大小为 2G 的文件 swapfile:
fallocate -l 1G /mnt/swapfile
如果上述命令报错,则:
dd if=/dev/zero of=/mnt/swapfile bs=1M count=2048
其中,if 表示 input_file 输入文件,of 表示 output_file 输出文件,bs 表示 block_size 块大小,count 表示计数。这里,我采用了数据块大小为 1M,数据块数目为 2048,这样分配的空间就是 2G 大小。
然后,格式化交换文件:
mkswap /mnt/swapfile
之后,挂载交换文件:
swapon /mnt/swapfile
为了保证开机自动加载虚拟内存,还需要在 /etc/fstab
文件中加入如下命令:
/mnt/swapfile swap swap defaults 0 0
Linux 下查看文件和文件夹大小
du -h --max-depth=1 your_dest_dir
注意:du -h --max-depth=1 your_dest_dir
只会返回目标文件夹和目标文件夹下首层文件夹的大小,不会返回更深层的文件夹的大小,也不会返回文件的大小。
要想返回更深层的文件夹的大小,可以设置 --max-depth
为更高的数值,或者干脆取消 --max-depth
参数,这样它就会返回目标文件夹下所有子文件夹的大小,不管其深度(但仍不会返回文件大小,其实,想看文件大小,直接在目标目录下运行命令 ls -htla
就可以啦!)。
要还想返回目标文件夹下首层的文件大小,可以使用下述命令:
du -h --max-depth=0 your_dest_dir
让终端走代理的几种方法
方法 1
在终端中直接运行命令
export http_proxy=http://proxyAddress:port
这个办法的好处是简单直接,并且影响面很小(只对当前终端有效,退出就不行了)。
如果你用的是 ss 代理,在当前终端运行以下命令,那么wget
curl
这类网络命令都会经过 ss 代理
export ALL_PROXY=socks5://127.0.0.1:1080
方法 2
把代理服务器地址写入 shell 配置文件 .bashrc
或者.zshrc
直接在 .bashrc
或者 .zshrc
添加下面内容
export http_proxy="http://localhost:port"
export https_proxy="http://localhost:port"
以使用 shadowsocks 代理为例,ss 的代理端口为1080
, 那么应该设置为
export http_proxy="socks5://127.0.0.1:1080"
export https_proxy="socks5://127.0.0.1:1080"
或者直接设置 ALL_PROXY
export ALL_PROXY=socks5://127.0.0.1:1080
localhost
就是一个域名,域名默认指向 127.0.0.1
,两者是一样的。
然后 ESC
后:wq
保存文件,接着在终端中执行source ~/.bashrc
或者退出当前终端再起一个终端。 这个办法的好处是把代理服务器永久保存了,下次就可以直接用了。
或者通过设置 alias 简写来简化操作,每次要用的时候输入setproxy
,不用了就unsetproxy
。
alias setproxy="export ALL_PROXY=socks5://127.0.0.1:1080"
alias unsetproxy="unset ALL_PROXY"
alias ip="curl http://ip.sb"
方法 3
改相应工具的配置,比如 apt
的配置
sudo vim /etc/apt/apt.conf
在文件末尾加入下面这行
Acquire::http::Proxy "http://proxyAddress:port"
保存 apt.conf
文件即可。
关于 apt
的代理设置可以参考 这里