文件&文件夹操作
联想一下windows上常见的文件或文件夹操作,点点鼠标都能完成的事情,在Linux上都需要用命令行进行完成。
转移到/home目录
cd /home
列出文件和文件夹
ls #查看所有文件详细信息 ls -all
新建test文件夹
mkdir test
新建/修改文件,如果希望有代码着色,可将vi
替换为vim
vi test.txt #按Insert键插入内容,按Esc键退出编辑 #保存文件,退出编辑并输入 :w #关闭文件,退出编辑并输入 :q #保存并退出可使用 :wq #如果不保存强制退出 :q!
设置权限
#设置test.sh权限为755 chmod 755 test.sh
剪切、重命名
mv test.txt test2.txt
复制
cp test.txt test2.txt #如果复制文件夹需 cp -r test test2 #如果test2存在,需复制 cp -r test/. test2 #如果test2中存在重名文件,需先删除再复制,否则会提示
删除
rm test #如果文件夹非空,或有嵌套,可增加/r参数如 rm /r test #如果不想依次确认,可增加/f参数。 ***执行之前一定要再次确认目录*** rm /rf test
安装软件
在Linux上安装软件比Windows还要简单,只要知道了软件名称就能一行命令安装,而且也不用担心捆绑垃圾软件。
安装vim编辑器
#如果是ubuntu,debian内核只要将yum替换为apt-get即可 #更新软件源 yum update #安装vim yum install vim #不用询问直接安装 yum install vim -y
等待安装完成即可。
下载文件
wget下载http链接
wget https://xxxx.com/l.zip #另存为 wget -O logo.png https://xxxx.com/l.zip #使用断点续传 wget -c https://xxxx.com/test.bin #后台下载 wget -b https://xxxx.com/test.bin
git下载github项目
git clone git@github.com:yhf7952/mmPic.git
压缩文件
Linux常用的压缩包格式有tar和zip
tar压缩
#仅打包不压缩 tar -cvf log.tar log.log #以gzip形式压缩 tar -zcvf log.tar.gz log.log #解压 tar -xvf log.tar tar -zxvf log.tar.gz
zip压缩
#将test文件压缩为test.zip zip -r test.zip ./test #解压 unzip test.zip
ssh远程服务器
从一台Linux服务器连接到另一台服务器就需要用到ssh命令。windows服务器连接服务器也是遵从的ssh协议。
ssh连接服务器
ssh root@1.2.3.4 password:
scp拷贝文件
通过scp命令可以将本地文件与远程服务器互相复制。
#将web.zip上传至服务器wwwroot目录 scp web.zip root@1.2.3.4:/home/wwwroot
后台运行
在执行一些耗时长的脚本时,如果ssh连接中断会影响脚本执行,为防止这种情况特别提供了后台运行功能,即使ssh中断,进程不受影响。
#创建或连接进程test screen -R test
防火墙
防火墙由于发行版本不同,一般分为两大类,iptables和firewalld
iptables
#查看防火墙状态 chkconfig iptables --list #开启、关闭,重启后失效 service iptables start service iptables stop #开启、关闭,重启仍然有效: chkconfig iptables on chkconfig iptables off #开启端口 iptables -I INPUT -p tcp --dport 80 -j ACCEPT
firewalld常见于CentOS7
#查看状态 systemctl status firewalld.service firewall-cmd --state #查看开放的服务和端口 firewall-cmd --list-services firewall-cmd --zone=public --list-ports #更新规则 firewall-cmd --reload #添加http服务 --permanent 表示永久生效 firewall-cmd --add-service=http --permanent #添加80端口 firewall-cmd --zone=public --add-port=80/tcp --permanent #服务控制 systemctl [start|stop|enable|disable] firewalld.service
开机启动
编辑/etc/rc.local,添加需要执行的脚本
vim /etc/rc.local
定时计划
为完成Linux自动化运行,必不可少的就是定时计划,如下,每天23:40执行自动备份脚本
vim /etc/crontab #编辑内容 # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * command to be executed 40 23 * * * root /bin/bash /data/backup.sh
crontab服务控制
sudo service crond [start|stop|restart|reload|status]
一键安装包
#一键包示例 wget https://xxxx.com/test.sh && chmod +x test.sh && base test.sh
直接回车运行,等待完成使用即可。