版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/andrewgithub/article/details/82563869
1.配置文件
让自己的vim和shell更适合自己
相关文件 .vimrc | .bashrc
路径 ~/.vimrc | ~/.bashrc
功能 影响本用户的vim | 影响本用户的bash(ubuntu默认shell 为 bash shell)
影响 覆盖/etc/vimrc | 覆盖bashrc文件
配置结束一般会在下次开机生效,想立即生效可使用 source+filename
注意:
vim命令见树状图,与常见IDE不同的是在vim中输入Ctrl+s之后并不是保存文件,而是使vim进入假死状态停止向终端输出,
需要按Ctrl+q再次激活才能使用;
相关命令:Ctrl+s 阻断向终端输出
Ctrl+q 回复向终端输出
/*
*
*自己的一些.vimrc配置
*
*/
" Sets how many lines of history VIM has to remember
set history=60
" display line number
set number
" Enable syntax highlighting
syntax enable
colorscheme desert
set background=dark
let mapleader = ","
let g:mapleader = ","
" Disable highlight when <leader><cr> is pressed
map <silent> <leader><cr> :noh<cr>
" Smart way to move between windows
map <C-j> <C-W>j
map <C-k> <C-W>k
map <C-h> <C-W>h
map <C-l> <C-W>l
" Enable filetype plugins
filetype plugin on
filetype indent on
" Set 5 lines to the cursor - when moving vertically using j/k
set so=5
" Ignore case when searching
set ignorecase
" When searching try to be smart about cases
" 小写字符忽略大小写,有大写字符则精确匹配
set smartcase
" Highlight search results
set hlsearch
" Makes search act like search in modern browsers
" 显示实时搜索效果
set incsearch
" Use spaces instead of tabs
set expandtab
" Be smart when using tabs
set smarttab
" 1 tab == 4 spaces
set shiftwidth=4
set tabstop=4
set ai "autoindent
set si "Smart indent
" 文件路径 格式 文件类型 ascii码 行列 百分比
set statusline=%F\ [%{&ff}]\ [%Y]\ [\%b/0x\%B]\ (%l,%v)[%p%%]
" 这个命令会确保你的状态条总会显示在窗口的倒数第二行
set laststatus=2
" 高亮匹配括号对,这样当你输入右括号时,光标会暂时跳转到左括号处闪烁
set showmatch
" 简单的调试用
namp <F10> osystem("echo \"\" >> ~/my.log");<Esc>16hi
iamp <F10> system("echo \"\" >> ~/my.log");<Esc>16hi
" 备份文件的保存位置
set backupdir=/tmp
set nonumber "不设置行号
set shell=/bin/bash "设置shell环境
syntax on "开启vim语法高亮
colorscheme desert "设置主题色
set background=dark
set autoindent "设置自动缩进
set nocompatible "不向下兼容vi
set showmatch "开启括号匹配
"set cursorline "光标所在行高亮
set ruler "设置标尺
set laststatus=2 "开启状态栏(默认是1)
set smartindent "开启新航时使用智能自动缩进
set hlsearch "搜索时高亮显示找到的文本
set wrap "设置自动换行
set tabstop=4 "设置缩进为4个空格
set softtabstop=4
set shiftwidth=4
filetype on "检测文件类型
set history=500 "设置历史行数
set smartindent "理想添加 依据上面的格式自动对齐
" 解决一些乱码问题
" 解决ssh输出中文乱码问题
set fileencodings=utf-8,gbk
" 添加一些头文件的目录,使'g f'命令更好用
set path=.,/usr/include,一些自定义目录
/* 小例子开头.bashrc */
/*******************************************小例子*****************************************************/
/*
*
*
* 作用: 输入md 创建文件夹并进入刚创建的文件夹
*
*/
md () {
mkdir -p $1
cd $1
}
/********************************************end*****************************************************/
/*
*
*自己的一些.bashrc配置
*
*/
#带保险的rm
alias rm='trash'
alias rl='trashlist'
alias ur='undelfile'
/* 我的系统是ubuntu16.0根据自己的系统更改~/.local/share/Trash/ 路径 */
trash()
{
mv $@ ~/.local/share/Trash/
}
#显示回收站中垃圾清单
trashlist()
{
ls -alt ~/.local/share/Trash/
}
#找回回收站相应文件
undelfile()
{
mv -i ~/.local/share/Trash/ $@ ./
}
#清空回收站
cleartrash()
{
echo -ne "Clear all files in ~/.trash, Sure?[y/n]"
read confirm
if [ $confirm == 'y' -o $confirm == 'Y' ] ;then
/bin/rm -rf ~/.local/share/Trash/*
/bin/rm -rf ~/.local/share/Trash/.* 2>/dev/null
fi
}
/* 若是没有安装trash管理软件使用一下别名 */
#先问在执行
#原生命令
alias nativerm='/bin/rm'
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
#现在最常用的文件夹
export J="/home/skange/code/haizeicourse/structure/"
#中英文man手册
alias eman='man -M /usr/share/man/'
alias man='man -M /usr/share/man/zh_CN/ '
#删除可执行文件
alias clearallx='mv -i `ls -F | grep \* | cut -d \* -f 1 | grep -v ".sh" ` ~/.trash'
#cd默认路径
export CDPATH=.:~:~/code:~/code/haizeicourse/
#sh文件加可执行权限
alias vimsh='touchsh'
touchsh()
{
touch $1
echo "#!/bim/bash" > $1
chmod u+x $1
vim $1
}
#默认创建父文件夹
# -> Prevents accidentally clobbering files.
alias mkdir='mkdir -p'
#-------------------------------------------------------------
alias h='history'
alias j='jobs -l'
alias which='type -a'
alias ..='cd ..'
#-------------------------------------------------------------
# Pretty-print of some PATH variables:
alias path='echo -e ${PATH//:/\\n}'
alias libpath='echo -e ${LD_LIBRARY_PATH//:/\\n}'
#-------------------------------------------------------------
alias du='du -kh' # Makes a more readable output.
alias df='df -kTh'
#
#-------------------------------------------------------------
# The 'ls' family (this assumes you use a recent GNU ls).
#-------------------------------------------------------------
# Add colors for filetype and human-readable sizes by default on 'ls':
alias ls='ls -hF --color'
alias lx='ls -lXB' # Sort by extension.
alias lk='ls -lSr' # Sort by size, biggest last.
alias lt='ls -ltr' # Sort by date, most recent last.
alias lc='ls -ltcr' # Sort by/show change time,most recent last.
alias lu='ls -ltur' # Sort by/show access time,most recent last.
alias l='ls -CF' # Sort by/show access time,most recent last.
#
# The ubiquitous 'll': directories first, with alphanumeric sorting:
alias ll="ls -lv --group-directories-first"
alias lm='ll |more' # Pipe through 'more'
alias lr='ll -R' # Recursive ls.
alias la='ll -A' # Show hidden files.
alias tree='tree -Csuh' # Nice alternative to 'recursive ls' ...
#-------------------------------------------------------------
alias dir="ls" # 模拟windows
alias lrd="ls -lR|grep '^[dl]'" # 递归列出所有的目录,包括链接
alias lsd="ls -l|grep '^[dl]'" # 列出所有的目录,包括链接
/*
*
*
*常见命令
*
*
*/
/***************************************************man*************************************************/
man 手册 匹配一个之后停止
man -a 强制显示所有匹配内容
man -f ==> whatis
/***************************************************whereis*************************************************/
whereis 查询文件存储位置
-b 只显示二进制文件
-f 只显示文件的真实名称
-m 只查找帮助文件
-s 只查找source文件
-M dir 设置查找目录
-S dir 设置查找目录
/***************************************************dmesg*************************************************/
dmesg 检测和控制内核的缓存,通常用来显示输出系统最后一次启动时内核的内部缓存信息
dmesg [-c] [-n level] [-s bufsize]
-c 显示信息后清空缓冲区中的信息
-s bufsize 设置查询所需的缓冲区大小,不设置默认是16392
-n level 设置日志信息输出的级别 -------设置 -n 1将只显示输出panic(恐慌)级别信息
/***************************************************lsmod*************************************************/
lsmod 显示出所有已加载的模块
判断是否正确加载内核给的模块
/***************************************************pstree*************************************************/
pstree 看代码理思路的神器,让运行的系统告诉你它是怎样运行的
-a 显示进程完成的进程及参数
-p 显示进程的进程号
-c 不进行精简,即不对同等的子树进行压缩
-h 高亮显示正在执行的进程及其父进程
-p 显示进程标识符
-u 显示用户名称
-l 不对过长的记录进行裁剪
-n 以PID进行排序
--user 显示指定用户的子树
例如:
andrew@andrew-Thurley:~/work$ pstree
systemd─┬─NetworkManager─┬─dhclient
│ ├─dnsmasq
│ ├─{gdbus}
│ └─{gmain}
├─accounts-daemon─┬─{gdbus}
│ └─{gmain}
├─acpid
├─atd
├─avahi-daemon───avahi-daemon
├─bluetoothd
├─colord─┬─{gdbus}
│ └─{gmain}
├─cron
├─cups-browsed─┬─{gdbus}
│ └─{gmain}
├─cupsd───dbus
├─dbus-daemon
├─fwupd─┬─{GUsbEventThread}
│ ├─{fwupd}
│ ├─{gdbus}
│ └─{gmain}
├─gnome-keyring-d─┬─{gdbus}
│ ├─{gmain}
│ └─{timer}
├─irqbalance
├─lightdm─┬─Xorg───{InputThread}
│ ├─lightdm─┬─upstart─┬─at-spi-bus-laun─┬─dbus-daemon
│ │ │ │ ├─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─at-spi2-registr─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─bamfdaemon─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─code─┬─code─┬─code─┬─code─┬─{TaskSchedu+
│ │ │ │ │ │ │ └─7*[{code}]
│ │ │ │ │ │ ├─code─┬─{TaskSchedu+
│ │ │ │ │ │ │ └─8*[{code}]
│ │ │ │ │ │ ├─{Chrome_ChildIOT}
│ │ │ │ │ │ ├─3*[{CompositorTile+
│ │ │ │ │ │ ├─{Compositor}
│ │ │ │ │ │ ├─{DedicatedWorker}
│ │ │ │ │ │ ├─{GpuMemoryThread}
│ │ │ │ │ │ ├─{Renderer::FILE}
│ │ │ │ │ │ ├─{TaskSchedulerRe}
│ │ │ │ │ │ ├─{TaskSchedulerSe}
│ │ │ │ │ │ └─9*[{code}]
│ │ │ │ │ └─code─┬─{Chrome_ChildIOT}
│ │ │ │ │ ├─3*[{CompositorTile+
│ │ │ │ │ ├─{Compositor}
│ │ │ │ │ ├─{GpuMemoryThread}
│ │ │ │ │ ├─{Renderer::FILE}
│ │ │ │ │ ├─{TaskSchedulerRe}
│ │ │ │ │ ├─{TaskSchedulerSe}
│ │ │ │ │ └─7*[{code}]
│ │ │ │ ├─code─┬─{Chrome_ChildIOT}
│ │ │ │ │ ├─{TaskSchedulerCo}
│ │ │ │ │ ├─{TaskSchedulerSe}
│ │ │ │ │ └─{Watchdog}
│ │ │ │ ├─{AudioThread}
│ │ │ │ ├─{Chrome_IOThread}
│ │ │ │ ├─{CompositorTileW}
│ │ │ │ ├─{CrShutdownDetec}
│ │ │ │ ├─{D-Bus thread}
│ │ │ │ ├─{NetworkChangeNo}
│ │ │ │ ├─2*[{TaskSchedulerBa}]
│ │ │ │ ├─2*[{TaskSchedulerFo}]
│ │ │ │ ├─{TaskSchedulerSe}
│ │ │ │ ├─6*[{TaskSchedulerSi}]
│ │ │ │ ├─9*[{code}]
│ │ │ │ ├─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ ├─{gmain}
│ │ │ │ ├─{inotify_reader}
│ │ │ │ ├─{sandbox_ipc_thr}
│ │ │ │ └─{threaded-ml}
│ │ │ ├─compiz─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ ├─{gmain}
│ │ │ │ └─4*[{pool}]
│ │ │ ├─2*[dbus-daemon]
│ │ │ ├─dconf-service─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─evolution-addre─┬─evolution-addre─┬─{dc+
│ │ │ │ │ ├─{ev+
│ │ │ │ │ ├─{gd+
│ │ │ │ │ └─{gm+
│ │ │ │ ├─{dconf worker}
│ │ │ │ ├─{evolution-addre}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─evolution-calen─┬─evolution-calen─┬─{dc+
│ │ │ │ │ ├─{ev+
│ │ │ │ │ ├─{gd+
│ │ │ │ │ └─{gm+
│ │ │ │ ├─evolution-calen─┬─{dc+
│ │ │ │ │ ├─2*[+
│ │ │ │ │ ├─{gd+
│ │ │ │ │ ├─{gm+
│ │ │ │ │ └─{po+
│ │ │ │ ├─{dconf worker}
│ │ │ │ ├─{evolution-calen}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─evolution-sourc─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─fcitx───{fcitx}
│ │ │ ├─fcitx-dbus-watc
│ │ │ ├─firefox─┬─Web Content─┬─{AudioIPC Clien+
│ │ │ │ │ ├─{AudioIPC0}
│ │ │ │ │ ├─{AudioIPC1}
│ │ │ │ │ ├─{Cameras IPC}
│ │ │ │ │ ├─{Chrome_~dThrea+
│ │ │ │ │ ├─{DOM File}
│ │ │ │ │ ├─{DOM Worker}
│ │ │ │ │ ├─{GMPThread}
│ │ │ │ │ ├─{HTML5 Parser}
│ │ │ │ │ ├─{ImageBr~geChil+
│ │ │ │ │ ├─{ImageIO}
│ │ │ │ │ ├─{ImgDecoder #1}
│ │ │ │ │ ├─{ImgDecoder #2}
│ │ │ │ │ ├─4*[{JS Helper}]
│ │ │ │ │ ├─{JS Watchdog}
│ │ │ │ │ ├─{MediaManager}
│ │ │ │ │ ├─{ProcessHangMon+
│ │ │ │ │ ├─{ProfilerChild}
│ │ │ │ │ ├─{ProxyResolutio+
│ │ │ │ │ ├─{SCTP iterator}
│ │ │ │ │ ├─{SCTP timer}
│ │ │ │ │ ├─{Socket Thread}
│ │ │ │ │ ├─{StyleThread#0}
│ │ │ │ │ ├─{StyleThread#1}
│ │ │ │ │ ├─{StyleThread#2}
│ │ │ │ │ ├─{SysProxySettin+
│ │ │ │ │ ├─{Timer}
│ │ │ │ │ ├─{VideoChild}
│ │ │ │ │ └─{dconf worker}
│ │ │ │ ├─Web Content─┬─{AudioIPC Clien+
│ │ │ │ │ ├─{AudioIPC0}
│ │ │ │ │ ├─{AudioIPC1}
│ │ │ │ │ ├─{Cameras IPC}
│ │ │ │ │ ├─{Chrome_~dThrea+
│ │ │ │ │ ├─{DOM File}
│ │ │ │ │ ├─{DOM Worker}
│ │ │ │ │ ├─{HTML5 Parser}
│ │ │ │ │ ├─{ImageBr~geChil+
│ │ │ │ │ ├─{ImageIO}
│ │ │ │ │ ├─{ImgDecoder #1}
│ │ │ │ │ ├─{ImgDecoder #2}
│ │ │ │ │ ├─4*[{JS Helper}]
│ │ │ │ │ ├─{JS Watchdog}
│ │ │ │ │ ├─{MediaManager}
│ │ │ │ │ ├─{ProcessHangMon+
│ │ │ │ │ ├─{ProfilerChild}
│ │ │ │ │ ├─{Socket Thread}
│ │ │ │ │ ├─{StyleThread#0}
│ │ │ │ │ ├─{StyleThread#1}
│ │ │ │ │ ├─{StyleThread#2}
│ │ │ │ │ ├─{Timer}
│ │ │ │ │ ├─{VideoChild}
│ │ │ │ │ └─{dconf worker}
│ │ │ │ ├─Web Content─┬─{Chrome_~dThrea+
│ │ │ │ │ ├─{DOM File}
│ │ │ │ │ ├─{ImageBr~geChil+
│ │ │ │ │ ├─{ImageIO}
│ │ │ │ │ ├─{ImgDecoder #1}
│ │ │ │ │ ├─4*[{JS Helper}]
│ │ │ │ │ ├─{JS Watchdog}
│ │ │ │ │ ├─{ProcessHangMon+
│ │ │ │ │ ├─{ProfilerChild}
│ │ │ │ │ ├─{Socket Thread}
│ │ │ │ │ ├─{Timer}
│ │ │ │ │ ├─{VideoChild}
│ │ │ │ │ └─{dconf worker}
│ │ │ │ ├─{AudioIPC Callba}
│ │ │ │ ├─{AudioIPC Server}
│ │ │ │ ├─{Cache I/O}
│ │ │ │ ├─{Cache2 I/O}
│ │ │ │ ├─{Classif~ Update}
│ │ │ │ ├─{Compositor}
│ │ │ │ ├─{Cookie}
│ │ │ │ ├─3*[{DOM Worker}]
│ │ │ │ ├─4*[{DataStorage}]
│ │ │ │ ├─{FS Broker 351}
│ │ │ │ ├─{FS Broker 8431}
│ │ │ │ ├─{FS Broker 8721}
│ │ │ │ ├─{FileBlockCache}
│ │ │ │ ├─{GMPThread}
│ │ │ │ ├─{Gecko_IOThread}
│ │ │ │ ├─{HTML5 Parser}
│ │ │ │ ├─{IPDL Background}
│ │ │ │ ├─{ImageBr~geChild}
│ │ │ │ ├─{ImageIO}
│ │ │ │ ├─{ImgDecoder #1}
│ │ │ │ ├─{ImgDecoder #2}
│ │ │ │ ├─{InotifyEventThr}
│ │ │ │ ├─4*[{JS Helper}]
│ │ │ │ ├─{JS Watchdog}
│ │ │ │ ├─{Link Monitor}
│ │ │ │ ├─{MediaCache}
│ │ │ │ ├─{ProcessHangMon}
│ │ │ │ ├─{ProxyResolution}
│ │ │ │ ├─{QuotaManager IO}
│ │ │ │ ├─{SaveScripts}
│ │ │ │ ├─{Socket Thread}
│ │ │ │ ├─{Softwar~cThread}
│ │ │ │ ├─{StyleThread#0}
│ │ │ │ ├─{StyleThread#1}
│ │ │ │ ├─{StyleThread#2}
│ │ │ │ ├─{SysProxySetting}
│ │ │ │ ├─{Timer}
│ │ │ │ ├─{URL Classifier}
│ │ │ │ ├─{VRListener}
│ │ │ │ ├─{VideoCapture}
│ │ │ │ ├─{dconf worker}
│ │ │ │ ├─2*[{firefox}]
│ │ │ │ ├─{gdbus}
│ │ │ │ ├─{gmain}
│ │ │ │ ├─{localStorage DB}
│ │ │ │ ├─{mozStorage #1}
│ │ │ │ ├─{mozStorage #2}
│ │ │ │ ├─{mozStorage #3}
│ │ │ │ ├─{mozStorage #4}
│ │ │ │ ├─{mozStorage #5}
│ │ │ │ ├─{mozStorage #6}
│ │ │ │ └─2*[{threaded-ml}]
│ │ │ ├─gconfd-2
│ │ │ ├─gnome-session-b─┬─deja-dup-monito─┬─{dc+
│ │ │ │ │ ├─{gd+
│ │ │ │ │ └─{gm+
│ │ │ │ ├─gnome-software─┬─{dco+
│ │ │ │ │ ├─{gdb+
│ │ │ │ │ └─{gma+
│ │ │ │ ├─nautilus─┬─{dconf wor+
│ │ │ │ │ ├─{gdbus}
│ │ │ │ │ ├─{gmain}
│ │ │ │ │ └─4*[{pool}]
│ │ │ │ ├─nm-applet─┬─{dconf wo+
│ │ │ │ │ ├─{gdbus}
│ │ │ │ │ └─{gmain}
│ │ │ │ ├─polkit-gnome-au─┬─{dc+
│ │ │ │ │ ├─{gd+
│ │ │ │ │ └─{gm+
│ │ │ │ ├─unity-fallback-─┬─{dc+
│ │ │ │ │ ├─{gd+
│ │ │ │ │ └─{gm+
│ │ │ │ ├─update-notifier─┬─{dc+
│ │ │ │ │ ├─{gd+
│ │ │ │ │ └─{gm+
│ │ │ │ ├─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gnome-terminal-─┬─bash───grep
│ │ │ │ ├─bash───pstree
│ │ │ │ ├─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gpg-agent
│ │ │ ├─gvfs-afc-volume─┬─{gdbus}
│ │ │ │ ├─{gmain}
│ │ │ │ └─{gvfs-afc-volume}
│ │ │ ├─gvfs-goa-volume─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfs-gphoto2-vo─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfs-mtp-volume─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfs-udisks2-vo─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfsd─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfsd-dnssd─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfsd-fuse─┬─{gdbus}
│ │ │ │ ├─{gmain}
│ │ │ │ ├─{gvfs-fuse-sub}
│ │ │ │ └─2*[{gvfsd-fuse}]
│ │ │ ├─gvfsd-metadata─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfsd-network─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfsd-smb-brows─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─gvfsd-trash─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─hud-service─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─indicator-appli─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─indicator-bluet─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─indicator-datet─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ ├─{gmain}
│ │ │ │ ├─{indicator-datet}
│ │ │ │ └─{pool}
│ │ │ ├─indicator-keybo─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─indicator-messa─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─indicator-power─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─indicator-print─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─indicator-sessi─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─indicator-sound─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─notify-osd─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─pulseaudio─┬─{alsa-sink-ALC26}
│ │ │ │ └─{alsa-source-ALC}
│ │ │ ├─sh───zeitgeist-daemo─┬─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─sogou-qimpanel─┬─3*[{QInotifyFileSys}]
│ │ │ │ ├─2*[{QThread}]
│ │ │ │ └─5*[{sogou-qimpanel}]
│ │ │ ├─sogou-qimpanel-
│ │ │ ├─unity-panel-ser─┬─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─unity-settings-─┬─check_gl_textur
│ │ │ │ ├─syndaemon
│ │ │ │ ├─{dconf worker}
│ │ │ │ ├─{gdbus}
│ │ │ │ └─{gmain}
│ │ │ ├─2*[upstart-dbus-br]
│ │ │ ├─upstart-file-br
│ │ │ ├─upstart-udev-br
│ │ │ ├─window-stack-br
│ │ │ ├─zeitgeist-datah─┬─{gdbus}
│ │ │ │ ├─{gmain}
│ │ │ │ └─4*[{pool}]
│ │ │ └─zeitgeist-fts─┬─{gdbus}
│ │ │ └─{gmain}
│ │ ├─{gdbus}
│ │ └─{gmain}
│ ├─{gdbus}
│ └─{gmain}
├─nmbd
├─plymouth
├─plymouthd
├─polkitd─┬─{gdbus}
│ └─{gmain}
├─rsyslogd─┬─{in:imklog}
│ ├─{in:imuxsock}
│ └─{rs:main Q:Reg}
├─rtkit-daemon───2*[{rtkit-daemon}]
├─smbd───4*[smbd]
├─snapd───9*[{snapd}]
├─sshd
├─systemd───(sd-pam)
├─systemd-journal
├─systemd-logind
├─systemd-timesyn───{sd-resolve}
├─systemd-udevd
├─thermald───{thermald}
├─udisksd─┬─{cleanup}
│ ├─{gdbus}
│ ├─{gmain}
│ └─{probing-thread}
├─upowerd─┬─{gdbus}
│ └─{gmain}
├─vsftpd
├─whoopsie─┬─{gdbus}
│ └─{gmain}
├─wpa_supplicant
└─xinetd
/***************************************************pmap*************************************************/
pmap 命令用来显示指定程序的内存信息
pmap [pid] [/proc/pid] /proc是个非常值得研究的文件夹
例如:
andrew@andrew-Thurley:~/work$ ps -a
PID TTY TIME CMD
9601 pts/5 00:00:00 grep
15237 pts/20 00:00:00 tload
15587 pts/19 00:00:00 ps
andrew@andrew-Thurley:~/work$ pmap 9601
9601: grep --color=auto .trash
000055a75b948000 200K r-x-- grep
000055a75bb7a000 4K r---- grep
000055a75bb7b000 4K rw--- grep
000055a75bb7c000 4K rw--- [ anon ]
000055a75d889000 132K rw--- [ anon ]
00007f9e0c535000 9980K r---- locale-archive
00007f9e0cef4000 96K r-x-- libpthread-2.23.so
00007f9e0cf0c000 2044K ----- libpthread-2.23.so
00007f9e0d10b000 4K r---- libpthread-2.23.so
00007f9e0d10c000 4K rw--- libpthread-2.23.so
00007f9e0d10d000 16K rw--- [ anon ]
00007f9e0d111000 1792K r-x-- libc-2.23.so
00007f9e0d2d1000 2048K ----- libc-2.23.so
00007f9e0d4d1000 16K r---- libc-2.23.so
00007f9e0d4d5000 8K rw--- libc-2.23.so
00007f9e0d4d7000 16K rw--- [ anon ]
00007f9e0d4db000 12K r-x-- libdl-2.23.so
00007f9e0d4de000 2044K ----- libdl-2.23.so
00007f9e0d6dd000 4K r---- libdl-2.23.so
00007f9e0d6de000 4K rw--- libdl-2.23.so
00007f9e0d6df000 440K r-x-- libpcre.so.3.13.2
00007f9e0d74d000 2048K ----- libpcre.so.3.13.2
00007f9e0d94d000 4K r---- libpcre.so.3.13.2
00007f9e0d94e000 4K rw--- libpcre.so.3.13.2
00007f9e0d94f000 152K r-x-- ld-2.23.so
00007f9e0db52000 20K rw--- [ anon ]
00007f9e0db68000 20K r---- grep.mo
00007f9e0db6d000 28K r--s- gconv-modules.cache
00007f9e0db74000 4K r---- ld-2.23.so
00007f9e0db75000 4K rw--- ld-2.23.so
00007f9e0db76000 4K rw--- [ anon ]
00007ffdaf950000 132K rw--- [ stack ]
00007ffdaf9a4000 12K r---- [ anon ]
00007ffdaf9a7000 8K r-x-- [ anon ]
ffffffffff600000 4K r-x-- [ anon ]
/***************************************************tload*************************************************/
tload 显示系统负载
-d 刷新的时间以秒为单位
-s 指定垂直防线刻度,刻度越小,垂直方向高度越大
tty 指定显示终端
-V 显示版本信息
具体效果见图tload
/***************************************************yes*************************************************/
yes 没听错就是神器yes
当在.bashrc中将rm 定义为别名 rm -i 之后就会遇到批量删除文件的时候老是得手动输入yes确认
yes命令和自动回答这个问题
yes string 会一直输出string 直到被中断,若是yes后面不加string 就默认输出 y
示例:
:~/work/test$ touch 1.c 2.c 3.c 4.c
:~/work/test$ yes | rm -i *.c
rm:是否删除普通空文件 '1.c'? rm:是否删除普通空文件 '2.c'? rm:是否删除普通空文件 '3.c'? rm:是否删除普通空文件 '4.c'? andrew@andrew-Thurley:~/work/test$
:~/work/test$ ls
:~/work/test$
/***************************************************end*************************************************/