Linux常用命令

常用命令(通用)

最频繁使用的命令

文件传输

远程传输命令:

scp -r local/file root@hostIp:/home #加r是目录

从服务器上下载/上传命令:

rz #将本地文件批量上传到远程Linux/Unix服务器,注意不能上传文件夹
sz #可将多个文件从远程服务器下载到本地。注意不能下载文件夹,如果下载文件夹,请先打包再下载
windows中常用命令

Win7中生成指定大小文件命令:

fsutil file createnew d:\test.reg 5278350000
操作技巧

返回上一次目录:

cd - # 

命令行常用命令:

Ctrl+a # 移至行首
Ctrl+e # 移至行尾
Ctrl+k # 删除至行尾
文件编辑

vim常用命令:

ngg/nG/:n #跳转到第n行
:set nu/:set number #显示行号
vim +n FileName #如果想打开文件即跳转
shift+g #跳到文件底部
gg #跳到文件头部
:32,65d+Enter #删除32到65行
:u #返回上一个状态
状态查询

查看网络状态:

netstat -ntpl  # 可以查看开放了那些端口
netstat  -anp  |grep   端口号 # LINUX中如何查看某个端口是否被占用

查看架构:

arch # 查看当前系统架构

查询linux多少位:

file /bin/ls
uanme -a

列出所有的环境变量:

env
export

iptables防火墙

 #查看防火墙状态
service iptables status  
#停止防火墙
service iptables stop  
#启动防火墙
service iptables start  
#重启防火墙
service iptables restart  
#永久关闭防火墙
chkconfig iptables off  
# 永久关闭后重启
chkconfig iptables on

临时设置IP地址

ifconfig eth0 192.168.25.129

设置\修改IP地址(未验证)

如果要让IP地址永久生效,需要编辑网卡配置文件:
使用VI编辑器设置,如 vi /etc/sysconfig/network-scripts/ifcfg-eth0(也可以 cd /etc/sysconfig/network-scripts/ 后 vi ifcfg-eth0)
将光标移动到 IPADDR 设置部分,改成需要设置的IP地址
设置好之后,把网络服务重启一下,如下图2个命令均可以 service network restart

输入输出重定向

简介:
‘<’ 和 '>‘分别用来支持linux中的输入输出重定向,其中’<‘支持输入重定向,’>'支持输出重定向。
0,1,2:在linux分别表示标准输入、标准输出和标准错误信息输出。
输出重定向到某个文件格式:
将执行命令输出的结果添加到某个文件末尾,使用 命令 >> 文件路径+文件名
将执行命令输出的结果写入某个文件并覆盖该文件之前的所有内容,使用 命令 > 文件路径+文件名
语法:命令 >! 文件
将命令的执行结果送至指定的文件中,若文件已经存在,则覆盖。
例如:
ls -lg >! lee.dat 将执行"ls -lg"命令的结果覆盖写入文件 lee.dat 中。
语法:命令 >& 文件
将命令执行时屏幕上所产生的任何信息写入指定的文件中。
例如:
cc lee.c >& lee.dat 将编译 lee.c 文件时所产生的任何信息写入文件 lee.dat 中。
语法:命令 >> 文件
将命令执行的结果附加到指定的文件中。
例如:
ls -lag >> lee.dat 将执行 “ls -lag” 命令的结果附加到文件 lee.dat 中。
语法:命令>>& 文件
将命令执行时屏幕上所产生的任何信息附加到指定的文件中。
例如:
cc lee.c >>& lee.dat 将编译 lee.c 文件时屏幕所产生的任何信息附加到文件 lee.dat 中。
Linux下还有一个特殊的文件/dev/null,它就像一个无底洞,所有重定向到它的信息都会消失得无影无踪。这一点非常有用,当我们不需要回显程序的所有信息时,就可以将输出重定向到/dev/null。
如果想要正常输出和错误信息都不显示,则要把标准输出和标准错误都重定向到/dev/null, 例如:

ls 1>/dev/null 2>/dev/null

还有一种做法是将错误重定向到标准输出,然后再重定向到 /dev/null,例如:

ls >/dev/null 2>&1

注意:此处的顺序不能更改,否则达不到想要的效果,此时先将标准输出重定向到 /dev/null,然后将标准错误重定向到标准输出,由于标准输出已经重定向到了/dev/null,因此标准错误也会重定向到/dev/null。

关机重启命令:
shutdown命令可以安全的将系统关闭
[-r] 重启计算器,执行完之后,网口识别完了还能登录到这台服务器上;
[-k] 带这个参数其实并不真正关机﹐只是送警告信号给每位登录者;
[-h] 在关闭服务器后再闭电源,执行过后就不能登录服务器了,除非把服务器的电源键按下,使其启动。 
shutdown -h now #关闭计算机
shutdown -h hours:minutes # 按预定时间关闭系统 
shutdown -c # 取消按预定时间关闭系统 
shutdown -r now # 重启
注:执行此命令需要root执行权限,shutdown执行关机,是发送信号给init,要求它改变运行级别,以此来关机。
实际中有些用户会使用直接断掉电源的方式来关闭linux,这是十分危险的。因为linux与windows不同,其后台运行着许多进程,
所以强制关机可能会导致进程的数据丢失使系统处于不稳定的状态。甚至在有的系统中会损坏硬件设备。而在系统关机前使用shutdown命令,
系统管理员会通知所有登录的用户系统将要关闭。并且login指令会被冻结,即新的用户不能再登录。
直接关机或者延迟一定的时间才关机都是可能的,还有可能是重启。这是由所有进程〔process〕都会收到系统所送达的信号〔signal〕决定的。

init命令,init是所有进程的鼻祖,其进程号为1。它可以发送信号终止所有的用户进程,守护进程等。
shutdown命令其实也就是使用这种机制。init定义了8个运行级别(runlevel),init 0为关机,而init1为重启。
init 0 # 关闭系统
init 1 # 重启系统
注:执行此命令需要root执行权限

halt命令,可以说是最简单的关机命令。halt命令说白了其实是调用shutdown -h。
halt在执行的时候,杀死应用进程,并在文件系统写操作完成之后就会停止内核的运行。
halt命令在实际使用的时候,也有一些常用的参数项。其中:
[-f] 在不调用shutdown的情况下强制关机或重启;
[-i] 关机前,先关闭掉所有的网络接口;
[-p] 为缺省选项,其实就是关机时调用poweroff。

poweroff # 等价于halt -p

reboot命令,reboot的工作过程跟halt基本上一样,只不过它是引发主机重启,而halt是关机不再启动,
在执行halt命令后不要惊讶怎么服务器登不上啦。它的参数与halt也类似。

logout # 注销 

文件目录命令

cd ../.. # 返回上两级目录
cd  # 进入个人的主目录
cd - # 返回上次所在的目录 
pwd # 显示工作路径
ls -l # 显示文件和目录的详细资料
ls -a # 显示隐藏文件
mkdir dir1 # 创建一个叫做 'dir1' 的目录'
mkdir dir1 dir2 # 同时创建两个目录
mkdir -p /tmp/dir1/dir2 # 创建一个目录树
rm -f file1 # 删除一个叫做 'file1' 的文件' 
rmdir dir1 # 删除一个叫做 'dir1' 的目录' 
rm -rf dir1 # 删除一个叫做 'dir1' 的目录并同时删除其内容 
rm -rf dir1 dir2 # 同时删除两个目录及它们的内容 
mv dir1 new_dir # 重命名/移动 一个目录 
cp file1 file2 # 复制一个文件 
cp dir/* . # 复制一个目录下的所有文件到当前工作目录 
cp -a /tmp/dir1 . # 复制一个目录到当前工作目录 
cp -a dir1 dir2 # 复制一个目录 
ln -s file1 lnk1 # 创建一个指向文件或目录的软链接 
ln file1 lnk1 # 创建一个指向文件或目录的物理链接

文件搜索命令

find / -name file1 从 '/' # 开始进入根文件系统搜索文件和目录
find / -user user1 # 搜索属于用户 'user1' 的文件和目录 
find /home/user1 -name \*.bin # 在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件
find /usr/bin -type f -atime +100 # 搜索在过去100天内未被使用过的执行文件 
find /usr/bin -type f -mtime -10 # 搜索在10天内被创建或者修改过的文件 
find / -name \*.rpm -exec chmod 755 '{}' \; # 搜索以 '.rpm' 结尾的文件并定义其权限 
find / -xdev -name \*.rpm  # 搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备 
locate \*.ps # 寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令 
whereis halt # 显示一个二进制文件、源码或man的位置 
which halt # 显示一个二进制文件或可执行文件的完整路径

系统信息查询命令:

arch 显示机器的处理器架构(1) 
uname -m 显示机器的处理器架构(2) 
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
cat /proc/cpuinfo 显示CPU info的信息
cat /proc/interrupts 显示中断
cat /proc/meminfo 校验内存使用
cat /proc/swaps 显示哪些swap被使用
cat /proc/version 显示内核的版本
cat /proc/mounts 显示已加载的文件系统
date 显示系统日期
cal 2007 显示2007年的日历表
date 041217002007.00 设置日期和时间 - 月日时分年.秒 
clock -w 将时间修改保存到 BIOS
cd /lib/modules/$(uname -r)/kernel # 进入内和目录模块

不常用(具体场景)

nginx相关命令

重启nginx,进入到nginx/sbin目录下执行如下命令:

./nginx -s reload

linux后台运行和关闭、查看后台任务

加在一个命令的最后加&,可以把这个命令放到后台执行:

python server.py &

ctrl + z可以将一个正在前台执行的命令放到后台,并且处于暂停状态。

jobs查看当前有多少在后台运行的命令
jobs -l选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated。但是如果任务被终止了(kill),shell 从当前的shell环境已知的列表中删除任务的进程标识。

fg将后台中的命令调至前台继续运行。如果后台中有多个命令,可以用fg %jobnumber(是命令编号,不是进程号)将选中的命令调出。

bg将一个在后台暂停的命令,变成在后台继续执行。如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出。

kill
法子1:通过jobs命令查看job号(假设为num),然后执行kill %num
法子2:通过ps命令查看job的进程号(PID,假设为pid),然后执行kill pid
前台进程的终止:Ctrl+c

nohup如果让程序始终在后台执行,即使关闭当前的终端也执行(之前的&做不到),这时候需要nohup。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。关闭中断后,在另一个终端jobs已经无法看到后台跑得程序了,此时利用ps(进程查看命令)

nohup python server.py &

Linux—CentOS 定时运行脚本配置

安装cronta

yum install crontabs

cron服务

service crond start    //启动服务
service crond stop     //关闭服务
service crond restart  //重启服务
service crond reload   //重新载入配置
service crond status   //查看服务状态

编写定时任务

crontab -e

基本格式 :
*  *  *  *  *  command
分 时 日 月 周 命令

第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
例子:

10 15 * * * /usr/local/demo.sh

表示每天的15:10执行demo.sh脚本
查看都有哪些定时任务

crontab -l

设置须要运行的脚本
新增调度任务可用两种方法:
1)、在命令行输入: crontab -e 然后加入对应的任务,wq存盘退出。
2)、直接编辑/etc/crontab 文件。即vi /etc/crontab,加入对应的任务。
crontab -e配置是针对某个用户的。而编辑/etc/crontab是针对系统的任务
查看调度任务
crontab -l //列出当前的全部调度任务
crontab -l -u jp //列出用户jp的全部调度任务
删除任务调度工作
crontab -r //删除全部任务调度工作
直接编辑 vim /etc/crontab ,默认的文件形式例如以下:

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
#For details see man 4 crontabs
#Example of job definition:
#.---------------- 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
#|  |  |  |  |
#*  *  *  *  * user-name command to be executed

这个文本解释的已经比較直观了。其中
星号():代表全部可能的值。比如month字段假设是星号。则表示在满足其他字段的制约条件后每月都运行该命令操作。
逗号(,):能够用逗号隔开的值指定一个列表范围,比如。“1,2,5,7,8,9”
中杠(-):能够用整数之间的中杠表示一个整数范围,比如“2-6”表示“2,3,4,5,6”
正斜线(/):能够用正斜线指定时间的间隔频率,比如“0-23/2”表示每两小时运行一次。同一时候正斜线能够和星号一起使用。比如
/10,假设用在minute字段,表示每十分钟运行一次。

这里举几个样例,基本涵盖了常见的一些情况:
实例1

5 * * * * ls 指定每小时的第5分钟运行一次ls命令
30 5 * * * ls 指定每天的 5:30 运行ls命令
30 7 8 * * ls 指定每月8号的7:30分运行ls命令
30 5 8 6 * ls 指定每年的6月8日5:30运行ls命令
30 5 8 6 * ls 指定每年的6月8日5:30运行ls命令
30 6 * * 0 ls 指定每星期日的6:30运行ls命令
30 3 10,20 * * ls 每月10号及20号的3:30运行ls命令
25 8-11 * * * ls 每天8-11点的第25分钟运行ls命令
*/15 * * * * ls 每15分钟运行一次ls命令
30 6 */10 * * ls 每一个月中。每隔10天6:30运行一次ls命令
22 4 * * * root run-parts /etc/cron.daily
#每天4:22以root身份运行/etc/cron.daily文件夹中的全部可运行文件,run-parts參数表示。运行后面文件夹中的全部可运行文件。
实例2
#每晚的21:30 重新启动apache
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
#每月1、10、22日的4 : 45重新启动apache
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
#每周六、周日的1 : 10重新启动apache
10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart
#每天18 : 00至23 : 00之间每隔30分钟重新启动apache
0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart
#每星期六的11 : 00 pm重新启动apache
0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart
#晚上11点到早上7点之间,每隔一小时重新启动apache
0 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart
#每一小时重新启动apache
0 */1 * * * /usr/local/etc/rc.d/lighttpd restart
#每月的4号与每周一到周三的11点重新启动apache
0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart
#一月一号的4点重新启动apache
0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart
#每半小时同步一下时间
0/30 * * * * /usr/sbin/ntpdate 210.72.145.44
注意

  • 1 * * * 命令表示是每小时之内的每一分钟都运行。
    必须指定在每一个小时的第几分钟运行。也就是说第一个
    号必须改成一个数值。
    由于号表示的就是每一分钟。
    另外小时位的/1和没有差别,都是每小时一次。
    假设是设置
    /2,实际上是能被2整除的小时数而不是从定时设置開始2小时后运行。比方9点设的到10点就会运行。
    最后可能会遇到以下这个问题
    root用户下 输入 crontab -l 显示
    no crontab for root 比如:
    [root@CentOS ~]# crontab -l
    no crontab for root
    这个问题非常easy,相同在 root 用户下输入 crontab -e
    按 Esc 按: wq 回车
    在输入 crontab -l 就没有问题了
    主要原因是由于这个liunxserver 第一次使用 crontab ,还没有生成对应的文件导致的,运行了 编辑(crontab -e)后 就生成了这个文件
    参考:yjbjingcha
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园建设方案旨在通过融合先进技术,如物联网、大数据、人工智能等,实现校园的智能化管理与服务。政策的推动和技术的成熟为智慧校园的发展提供了基础。该方案强调了数据的重要性,提出通过数据的整合、开放和共享,构建产学研资用联动的服务体系,以促进校园的精细化治理。 智慧校园的核心建设任务包括数据标准体系和应用标准体系的建设,以及信息化安全与等级保护的实施。方案提出了一站式服务大厅和移动校园的概念,通过整合校内外资源,实现资源共享平台和产教融合就业平台的建设。此外,校园大脑的构建是实现智慧校园的关键,它涉及到数据中心化、数据资产化和数据业务化,以数据驱动业务自动化和智能化。 技术应用方面,方案提出了物联网平台、5G网络、人工智能平台等新技术的融合应用,以打造多场景融合的智慧校园大脑。这包括智慧教室、智慧实验室、智慧图书馆、智慧党建等多领域的智能化应用,旨在提升教学、科研、管理和服务的效率和质量。 在实施层面,智慧校园建设需要统筹规划和分步实施,确保项目的可行性和有效性。方案提出了主题梳理、场景梳理和数据梳理的方法,以及现有技术支持和项目分级的考虑,以指导智慧校园的建设。 最后,智慧校园建设的成功依赖于开放、协同和融合的组织建设。通过战略咨询、分步实施、生态建设和短板补充,可以构建符合学校特色的生态链,实现智慧校园的长远发展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值