Linux 常用命令基础入门二



PROCESS  进程
一个程序  开启一个进程
ps aux|less报告系统当前的进程状态


USER     进程启动者 (哪个用户在使用这个进程)
PID        进程号
%CPU    百分比CPU的使用率
%MEM   以百分比标识的内存使用率
VSZ        虚拟内存大小
RSS        进程占用的物理内存的大小,以前字节为单位
START    进程运行的其实时间,若超过24小时,则用天表示


/vim   进行相应内容查找


ps aux|grep vim   也可以直接得到进程名对应进程


kill PID号     就可以杀死相对应的进程


命令行启动图形化界面   
启动其他程序   firefox 


若要后台执行则   firefox &
则就在后台启动,命令行也还是可以用的


Ctrl +D  停止运行, 则程序没有响应


恢复则就敲  bg
fg 回到前台   Ctrl +C  结束


kill -9  PID号   强制杀死,
但程序占用大量内存,使桌面系统被拖死
无法输入


Ctrl Alt  F1   则可以到达第一个工作台
杀死相应的进程   再Ctrl  Alt  F7 回到原来工作台


shell   退出命令exit






Search  查找


locate 系统权利范围内
find    目录范围内
grep   字符串范围内




locate vimrc  就可以打印系统路径上所有包含vimrc的文件了
locate 是从一个数据库中去查找,所以很快 ,而不是直接FIle System 


更新数据库
sudo updatedb


find  .    当前目录的所有内容
find  .|grep .txt    后缀为txt 文件
find  . -type f       查看文件
find  . -type d      查看目录




find . -type f  -exec          ls -l       '{}'        ';'
                                     对找到的文件的操作   结束符
//查找相应的字符串
find . -type f -exec grep hello '{}'  ';'  


//查找相应的字符串,并打印文件名
find . -type f -exec grep hello '{}'  ';'  -print       


//查找相应的字符串,并打印文件名。和匹配项所在的行号
find . -type f -exec grep -n hello '{}'  ';'  -print             


//忽略小写
find . -type f -exec grep -ni hello '{}'  ';'  -print       






网络操作
ssh  远程
rsync数据传输


本机(客户端)  openssh-client    (ubuntu-destop)
服务器端            openssh-server  (ubuntu-server)


如服务器的域名为
happycasts.net   106.186.22.51
ssh  peter(服务器的用户名)@happycasts.net   就可以链接服务器了


每次登陆都要输入一遍密码,太麻烦,可以
在本地机器上
ssh-keygen
cd ~/.ssh
ls
id_rsa            id_rsa.pub
私钥private    公钥public 


我们要做的就是把公钥存到 服务器的 /home/peter/.ssh.authorized_keys
可以手动拷贝粘贴,也可以用系统命令进行
ssh-copy-id [email protected]
则以后登陆就可以不用输入密码了


是用vim 编辑器进行远程操作可能会遇到突然间网络断开,
或者自己进行CTRL +D 退出链接,导致失去当前的页面操作
可以使用tmux
tmux 终端窗口管理器
tmux a 可以重新回到原来的操作现场
推荐视频  HappyCasts  41 期




rsync -r mydir(文件目录) happycasts.net(服务器名):(冒号后面可以进一步添加路径)
不指定目录会自动默认主目录


rsync -r happycasts.net:mydir .
将服务器上的数据加载到本地


文件有删除增加 通过rsync 同步


rsync -av --delete mydir/happycasts.net:mydir/   否则无法删除




软件安装
Sublime  代码编辑器
下载后,解压缩
mv Sublime\ Text\ 2 .sublime  移动到其他目录
echo  $PATH 环境命令


变成系统可执行的文件,可以为它创建一个路径链接
ln -s ~/.sublime/sublime_text(文件位置) ~/bin/(文件名)


自己下载源码
hello-2.2.tar.bz2  解压后
进入相应的目录结构中
三步曲
第一   ./configure
第二   make
第三   sudo make install 


sudo apt-get instal ncursew ...  安装一些库


DEB封装包,可以解决各种安装问题,安装位置,程序本身等等
sudo dpkg -i google-chrome-stable_current_i386.deb
一个deb包安装后,会在相应的包数据库中留下丰富的信息,以便帮助以后的管理


通过dpkg -l|grep chrome(筛选字符串)
就可以查看相应的安装包


如果想查看某个包在系统上安装了那些文件,可以
dpkg -L google-chrome-stable(包名)


如果在使用过程中想知道某个文件由哪个包提供
则 dpkg -S /opt/google/chrome/chrome(文件名)


软件仓库  一般是通过源码包发布


安装软件
sudo apt-get install git(软件名)
删除软件
可以用sudo apt-get remove git
但是如果要把配置文件也删除的话可以
sudo apt-get purge git




有时候我们要安装的软件我们知道,但具体包名不知,可以
apt -cache search ncurse|less 查看
也可以通过Tab Tab 两次进行补齐


如果一些软件需要依赖文件,系统会提示是否安装






shell 脚本编程
有时候需要许多命令去执行,
则可以通过脚本编程的方式去进行


指定解析器    第一行要指定解析器
语句即命令    
位置参数
脚本不再当前shell 执行     而是另开一个shell 
循环控制
远程执行
确认执行
其他语言写脚本


./peter.sh  执行文件 另开shell
可以通过source  peter.sh  则是在当前工作目录执行


vim rename.sh
创建并编辑文件
#!/usr/bin/env bash    //声明行


cd $1             //实用参数


for file in a b c
do   //开始
mv $file  $file.txt
done   //结束
但上面有局限性




在键盘Tab键上方有个特殊的导引号 `````
导引号中放入命令,则可以取出命令的输出


#!/usr/bin/env bash    //声明行


cd $1             //实用参数
echo I am in `pwd`


for file in `ls`
do   //开始
mv $file  $file.txt
done   //结束


python  bash  

你可能感兴趣的:(ubuntu)