我在阿里云上面学习这个免费的Linux课程,以下是我的笔记:
ifconifg
查看网络连接状态
init 3
关掉图形界面切换到纯字符界面
free -h
查看内存的使用量(当我们在用图形界面时,内存会被占用很多,用纯字符就会少很多占用量)
init 5
切换到图形界面
runlevel
查看运行模式
startx
可以开启图形界面,和 init 5 相比,startx不需要登录,且startx不认为是模式切换,而被认为是开启了一个软件
init 6
== reboot
重启
init 0
, halt
, poweroff
关机(有细微差别)
whoami
查看当前用户
Ctrl+alt+F(1-6) 切换不同终端
tty
(teletypewriters)查看自己在终端Fx(返回终端设备名ttyx)(图形界面的终端设备名为pts/0)(pts意为伪终端,用软件远程登录会显示pts (pseudo-tty))
chvt
(1-6)== Ctrl+alt+F(1-6)
判断管理员和普通用户的方法:
1、管理员是#,普通用户是$
2、管理员的uid是0,普通用户的uid不是0
id -u [username]
查看当前用户uid(加上username,就是查看该用户的uid)
cat /etc/centos-release
查看当前centos版本
lsb_release -a
查看操作系统版本信息
uname -r
查看内核版本
lscpu
查看cpu信息
cat /proc/meminfo
查看存储信息
shift + pageup 向上翻页
lsblk
看硬盘大小
mii-tool eth0
看网卡(centos6)(如果驱动不支持报错,可以通过ethtool eth0
查看link detected来判断是否正常)
mii-tool ens33
看网卡(centos7)
who am i
查看用户,登录终端名和登录时间
who
查看有哪些用户在连接这台操作系统
cat /etc/shells
查看shell(再通过运行不同shell的目录来切换shell)
echo $SHELL
查看当前系统使用的shell类型
在bash(默认)这个shell中 > (filename) 可以用来创建文件,例如:> f1
logout
,exit
,Ctrl+D 退出
Ctrl+L, clear
清屏
hostname
查询主机名
echo $PS1
查看当前命令提示符的格式
PS1=(新的提示符格式)改变命令提示符格式(退出再登录又会恢复默认格式)
PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"
1; 高亮
5; 闪烁
41; 红色背景
33m 黄色字体
(41-47是字体颜色,31-37是背景颜色)
0m表示颜色终止,表示颜色到命令提示符结束就停止,删掉[\e[0m]会使后面命令也变色
在Linux里面,要想保存必须写文件
想保存变色的命令,就写在 /etc/profile.d/目录下面,自己建文件,把命令写进去:nano /etc/profile.d/filename.sh
示例创建了env.sh文件
nano /etc/profile.d/env.sh
打开env文件,把之前的命令粘贴进去,然后按Ctrl+X退出(^脱字符表示Ctrl)
如果nano不存在,就通过yum -y install nano
安装
设置以默认用户root的账号开启:
nano /etc/gdm/custom.conf
在[deamon]下面填入
AutomaticLoginEable=true
AutomaticLogin=root
/etc/motd 可以改名每天登录进去的提示语句(message of the day)
mv file path
把file文件移动到path路径下
help
,enable
可以查看内部命令
type command
可以判定某个command命令是否是内部命令
type -a command
可以列出所有同名command是否为内部命令
enable -n builtin
禁用某个builtin内部命令
enable builtin
启用某个builtin内部命令
enable -n
查看所有被禁用的内部命令
which command
查外部命令command的路径
whereis command
查看外部命令command的路径以及其帮助文档的路径
Tab键补全命令
cp file path
把file文件拷贝到path路径下
hash -l
,hash 显示所有缓存到hash表里面的文件路径(加 -l 可以看到命令的别名)
hash -d command
从hash表中清除command
hash -r
清空hash表
rm file
删除某个路径下面的文件(会出现问题,如果某个命令(在不同路径有同名命令)被录入hash表,被删除以后,下次再使用这个命令会报错,必须在hash表中删除这个路径)
(Linux执行命令顺序:看是不是别名;再看是不是builtin;不是,在hash表里找路径;没有,在path变量里面一个个找,运行第一个遇到的命令文件;没找到,command不存在,报错)
hash -p path name
将命令全路径path起别名为name
hash -t
打印缓存中name的路径
alias aplianame=cmd
定义别名,aplianame是别名名称,cmd是命令,例如:alias cdnet="cd /etc/sysconfig/network-scripts/"
(cmd中间有空格要用英文引号""/’'引起来)
ls看不见 . 打头的文件,只有用 ls -a
才行
要想保存住别名设置,需要写入文件 .bashrc (用哪个账号写入这个文件,那个别名就只能用在那个账号登录的时候,如果想统一修改别名,可以在bashrc里面修改:
nano /etc/bashrc
,修改在这个文件最下方),但是只是写入不会生效(因为写入文件只是保存在硬盘里),要读入内存才会生效,保存后的文件在退出重进以后会被读取生效,或者通过source/.命令:source .bashrc/. .bashrc
alias
可以看到所以定义的别名
unalias aplianame
取消别名aplianame(删除内存中的别名,如果存在了文件里面,下次登录又会生效)
‘命令’ ,\命令 ,command 命令 表示使用这个 命令 的原始命令,不把 命令 作为别名使用(/path/命令,这个只适用于外部命令,因为内部命令没有路径)
想同时执行很多命令,可以把他们写在一起,中间用分号;隔开
command1;command2;…
把一个命令分成多行写,在命令后面加上
com
man
d
Ctrl+C 强制停止命令(Ctrl+D有时也可以)
date
显示操作系统的软件时间
date MMDDHHmmYYYY.ss
改变操作系统时间 月日 小时 分钟 年 秒
clock
显示硬件时间
clock -s
以硬件时间为准,校正系统时间
clock -w
以系统时间为准,校正硬件时间
/etc/localtime 时区文件
ll /etc/localtime
查看时区
cal
显示日历(本月)
cal -y
显示一年日历
cal YYYY
显示某一年的日历
cal MM YYYY
显示某一年某一月的日历
w
显示这个系统上面谁在登录,以及其进行的操作
screen命令:
安装screen:
yum list screen*
查看是否有screen安装包
yum install screen
安装screen
screen -h
了解screen功能
screen -S name
开启自己的screen功能,并取名为name
screen -ls
查看开启screen的会话
screen -x name
加入名字为name的会话
exit
退出会话
Ctrl+A+D 临时退出
screen -r
重新加入会话(不行就-x)
开启一个screen,就算只有单人加入会话也有意义,如果在进行操作途中突然本机和服务器之间断网了,如果开了screen会话,就不用重头在进行操作了。
echo $变量
显示这个变量
echo -n
不自动换行
echo -e
支持\解释功能(\要被"“引起来 如:echo -e “\a” 是警报声,这个功能可以用在同时执行多个命令时,提示命令完成。如:sleep 1000;echo -e "\a"
)
echo (-E)
默认不支持\解释功能
\r 是回车的意思,即回到行首,和换行键执行的操作(换行+回车)不一样。
Linux里面\n 表示换行+回车
Windows里面\r \n 表示换行+回车
(所以在Linux里面写的文件,放到Windows里面可能运行不了)
yum install lrzsz
安装rz
''单引号为强引用,不会替换里面的内容,”"双引号是弱引用,会扩展里面的内容。(不能识别命令,只能识别变量)
``反向单引号,可以识别命令和变量
等于$()
例如:
echo $SHELL
>/bin/bash
ls -l /bin/bash
>-rwrx-…………
ls -l `echo $SHELL`
>-rwrx-…………
ls -l $(echo $SHELL)
>-rwrx-…………
查看ASCII表
yum install man
安装man
man ascii
查看ASCII表
manpath
查看man的安装路径
如果报错 No manual entry for ascii
通过 yum install man-pages
即可
iconv -f
编码表1 file -o file2
把以编码表1为编码的file 转化成以unicode编码格式的新文件file2