基本技能(一)
拖了好久的东西终于基本上完事了,做个总结吧
基础篇
1.远程从linux连接到服务器ssh 用户名@服务器地址
ssh应该是密钥的意思吧。。。。。
phoebe是我的账户名 后面是服务器的地址
出现绿色的phoebe@NLP~就是登陆服务器成功了
在这里你可以对服务器中的文件进行操作
如果你想从本地上传文传文件到服务器一定记得先exit,这样才是到了本地
之后scp -r 本地目录的地址 账户名@服务器地址:想在服务器上copy的地址
登陆服务器可以看到上传进去了
这里的-r是整个目录文件 单源文件是不可以的
具体的scp方法可以看http://www.cnblogs.com/hitwtx/archive/2011/11/16/2251254.html
2.Linux基本bash命令
a) 查看文件大小,内存大小,cpu信息,硬盘空间等等
显示当前目录所有文件大小的命令ls -lht
在命令框 输入命令:ls -lht 将会一一列出当前目录下所有文件的大小,以及所有文件大小的统计总和。或者直接打入ll命令
使用du -sh * 命令也可以列出当前文件以及文件夹的大小。这个命令要注意:sh与*之前要有个空格的。列出home目录所有文件大小的总和命令为:du -s /home或du -sh /home
查询具体的文件大小首先你要找到该文件,然后使用du -s ,du -sh,ls -lh,都是可以看到该文件的大小的。不过这些命令后面需要带文件名,比如查找文件名为backup.sh文件的大小,命令为:du -s backup.sh ,ls -lh backup.sh
详细的可以看这里:http://jingyan.baidu.com/article/86fae346b5f1623c49121ae9.html
b) 查看目前运行程序情况,剩余内存,kill程序
top -c #任务管理器
free -m #查看内存使用情况
kill -9 2312 (说明:强制杀死进程 kill -9 pid )
df -h #查看磁盘使用情况
look: http://www.php-note.com/article/detail/629
c) 运行一个程序
可以运行java c shell脚本 awk。。。什么都行
运行c首先要编译 java也要先javac 运行shell 就直接sh 123.sh
look: blog.csdn.net/zr_lang/article/details/17080335
d) 写一个脚本,使用上for, if等语句
首先在命令行中建立一个.sh脚本vim for.sh
在这里的变量都是不用定义类型的 比如说for中的i变量如果要变量i具体的值就给他取一个$号
注意这里的单引号是键盘左上角Esc下面的那个。
看这个程序
运行之后从键盘read一个数字a
这里的条件判断是(( ))这个样子的 记住就行了
每个if后都要有个结束标志 就是把if倒过来fi
我觉得wiki.jikexueyuan.com/project/linux/shell-scipt-two.html写的挺好的
就先说到这里吧,大家可以看那个网址里写的挺好的。
在后面的内容我也会继续分析shell脚本带来的好处和语法。
e) sed命令, grep命令
sed,grep都是文本处理工具
sed:Stream EDitor,流编辑器,默认只处理模式空间,不处理原数据,如果你处理的数据是针对行进行处理的,可以使用sed;
就是说你对文本内容进行增加或者删除替换都不会影响原来的文本内容
如果你向写回文本可以用>123.txt
或者用-i参数直接修改文本内容。看个例子:
sed 'AddressCommand' filepath
^代表行首 &代表行尾
-i:直接修改原文件
-r:表示使用扩展正则表达式
d:删除符合条件的行;
i \string:在指定的行前面添加新行,内容为string
s/pattern/string/修饰符:查找并替换,默认只替换每行中第一次被模式匹配到的字符串
加修饰符
g:全局替换,如:s/pattern/string/g
i:忽略字符大小写,如:s/pattern/string/i
用s命令替换
我使用下面的这段文本做演示:
|
$ cat pets.txt This is my cat my cat 's name is betty This is my dog my dog's name is frank This is my fish my fish's name is george This is my goat my goat's name is adam
|
把其中的my字符串替换成Hao Chen’s,下面的语句应该很好理解(s表示替换命令,/my表示匹配my,/Hao Chen’s表示把匹配替换成Hao Chen’s,/g 表示一行上的替换所有的匹配):/为转义字符。规定有转义字符的必须用双引号""
1
2
3
4
5
6
7
8
9
|
$ sed "s/my/Hao Chen's/g" pets.txt This is Hao Chen's cat Hao Chen 's cat' s name is betty This is Hao Chen's dog Hao Chen 's dog' s name is frank This is Hao Chen's fish Hao Chen 's fish' s name is george This is Hao Chen's goat Hao Chen 's goat' s name is adam |
再注意:上面的sed并没有对文件的内容改变,只是把处理过后的内容输出,如果你要写回文件,你可以使用重定向,如:
1
|
$ sed "s/my/Hao Chen's/g" pets.txt > hao_pets.txt |
或使用 -i 参数直接修改文件内容:
1
|
$ sed -i "s/my/Hao Chen's/g" pets.txt |
详细内容可以看这个http://coolshell.cn/articles/9104.html和http://lq2419.blog.51cto.com/1365130/1238880
目前只是初步了解,留下好的参考资料就ok了。
grep:文本过滤器,如果仅仅是过滤文本,可使用grep,其效率要比其他的高很多;
awk:报告生成器,格式化以后显示。如果对处理的数据需要生成报告之类的信息,或者你处理的数据是按列进行处理的,最好使用awk。
grep,awk下次再说
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!