Linux 和 Windows PowerShell 常用工具/命令 记录
Linux 常用工具
enca: http://dl.cihar.com/enca/ 文件名编码转换
iconv: 文件编码转换
convmv: 文件名编码转换
ldd: 查看可执行文件或动态链接库的依赖库
getconf: 查看配置信息(如getconf LONG_BIT可知当前系统是32位还是64位版本)
tcpdump: 监视网络服务
sync: 将缓冲区内容写入磁盘
echo 3 > /proc/sys/vm/drop_caches
: 手动释放缓存nm: 查看符号表
readelf: 查看ELF信息(Executable and Linkable Format)
man: 文档
top/htop: 查看最高占用
perf: 性能数据采集
sar: 系统信息采集
uptime: 系统1分钟、5分钟和15分钟的系统平均负载
free: 内存使用情况
iostat: 磁盘IO使用情况
pidstat: 查看进程状态
ipcs: 查看共享内存、消息、信号量信息,如:ipcs -m 共享内存
objdump –CS –l [bin文件]: 不反人类的反编译
strace: 系统调用跟踪
pstack: 查看当前调用栈
lsof: 查看打开的文件
ip addr: 查看ip地址
man [章节号] 手册名称:
Standard commands (标准命令)
System calls (系统调用)
Library functions (库函数)
Special devices (设备说明)
File formats (文件格式)
Games and toys (游戏和娱乐)
Miscellaneous (杂项)
Administrative Commands (管理员命令)
export $ENV_VAR:/usr/bin (环境变量)
PATH (可执行文件目录) LD_LIBRARY_PATH (C/C++库文件目录) /etc/ld.so.conf (C/C++ 库文件目录表)
常用命令及快捷键
ps -aux: 查看进程信息 ps -o majflt minflt -C [command name] 来查看进程的majflt, minflt的值(压力测试时使用) netstat -tuanp: 查看进程占用端口, netstat -aep: 查看所有占用的网络端口信息 Ctrl+r : 最近历史命令 ! 匹配最近历史 cd - :上一次访问的目录 Ctrl + u 和 Ctrl + y: 删除当前行,恢复删除的行 Ctrl + c : 换行重新输入命令 Ctrl + d : 某些程序的中断命令 lsof: 查看被打开的文件(该指令可用于查找标记删除但未被真正删除的文件[会被标记为 deleted ], 详见 http://www.ibm.com/developerworks/cn/aix/library/au-lsof.html )
常用环境变量
echo PATH (可执行文件目录) LD_LIBRARY_PATH (C/C++库文件目录) /etc/ld.so.conf (C/C++ 库文件目录表)
Bash字符串操作
#
, 删除左边第一个匹配串,保留右边字符串##
, 删除左边最后一个匹配串,保留右边字符串%
, 删除右边第一个匹配串,保留左边字符串%
, 删除右边最后一个匹配串,保留左边字符串:0:N
, 保留左边第一个字符起的N个字符:X
保留左边第X个字符起的N个字符:0-X:N
, 保留右边第X个字符起的N个字符:0-X
, 保留左边第一个字符起的N个字符/a/b
用b替换第一个出现的a//a/b
用b替换所有出现的a/#a/b
用b替换前缀a/%a/b
用b替换后缀a
系统信息(IP等)
特殊文件
网络名称: /etc/sysconfig/network 网卡: /etc/sysconfig/network-scripts/* 网卡信息缓存: /etc/udev/rules.d/70-persistent-net.rules
KVM和网络配置
virsh:虚拟机管理 virt-install:虚拟机安装
建议还是搞个GUI工具,然后可以连接上只有命令行的宿主机管理,会方便的多。比如虚拟机里搞个GUI版本的Linux,远程连接到宿主机上。
CentOS的网络管理是NetworkManager和原来的network.service并存,并且NetworkManager先启动。
brctl:网桥管理nmcli:NetworkManager的命令行工具
nmtui:NetworkManager的TUI工具(和GUI比较像了)
Linux的KVM虚拟机默认是NAT网络,如果需要使用网桥可以先用brctl或者nmcli或者nmtui把virbr0网桥删了 然后再用nmcli或者nmtui添加网桥,最后把原来的网络连接桥接上来即可。 其他的网络防火墙方面的记在《关于firewalld和systemd的一些命令速记》
Bash
Vim
文本替换
分屏
关键字导航
字符相关
缩进相关
文件系统
编译器命令
Linux查看系统信息命令
工具查询地址: http://bhami.com/rosetta.html
最后记录一下我常用的软件包
Posix环境
tar zip unzip gzip lzip zlib binutils gcc gdb cmake subversion git make colorgcc colordiff diffutils automake texinfo curl wget ncurses libncurses bison rsync uuid-devel valgrind telnet cppcheck openssl-devel
开发工具&库
openssl-devel readline-devel ncurses-devel libunwind-devel python php-cli java-1.8.0-openjdk
Linux专用
yum-remove-with-leaves yum-download bleachbit yum-plugin-fastestmirror dstat sar ipcalc iotop htop atop iptraf rtorrent aria2 p7zip
Linux - LLVM - Clang 套件
llvm clang dragonegg lldb
Linux桌面
cinnamon gnome-tweak-tool numix-gtk-theme imsettings-cinnamon : 用于切换系统输入法
小工具
figlet
编辑工具
pandoc ctex/miktex
图像处理
gimg darktable GraphicsMagick
Last updated