linux安装及常见命令(下)
一,文件系统
1.1 目录操作
1.1.1 切换目录
命令:cd + 目录的路径
查看当前目录的完整路径 :pwd
[root@node01 local]# pwd
/usr/local
[root@node01 local]#
命令 cd … 返回到父目录
[root@node01 local]# cd ..
[root@node01 usr]#
1.1.2 新建目录
命令:mkdir + 目录名字
查看当前目录下拥有的子目录和文件: ls
[root@node01 usr]# mkdir test
[root@node01 usr]# ls
bin etc games include lib lib64 libexec local sbin share src test tmp
[root@node01 usr]#
1.1.3 拷贝目录
cp source dest -r
[root@node01 usr]# cp test test02 -r
[root@node01 usr]# ls
bin etc games include lib lib64 libexec local sbin share src test test02 tmp
[root@node01 usr]#
1.1.4 删除目录
rmdir directory
注意:rmdir只能删除空目录,若要删除非空目录则用rm命令
rm -rf dir
[root@node01 usr]# rmdir test
[root@node01 usr]# ls
bin etc games include lib lib64 libexec local sbin share src test02 tmp
[root@node01 usr]#
1.1.5 移动/更改 目录
更改文件或目录的名字:mv + 旧目录名字 + 新目录名字。
移动文件或目录:mv + 目录/文件名字 + 其他路径
mv test02 / 将test02目录移动到 根目录/ 下
[root@node01 usr]# mv test test02
[root@node01 usr]# ls
bin etc games include lib lib64 libexec local sbin share src test02 tmp
[root@node01 usr]# mv test02 /
[root@node01 usr]# ls
bin etc games include lib lib64 libexec local sbin share src tmp
[root@node01 usr]# ls /
bin dev home lib64 media opt root selinux sys tmp var
boot etc lib lost+found mnt proc sbin srv test02 usr
[root@node01 usr]#
1.2 文件操作
1.2.1 新建文件:(一切皆文件)
touch web.log 创建一个空文件。
[root@node01 /]# cd test02
[root@node01 test02]# touch web.log
[root@node01 test02]# ls
web.log
[root@node01 test02]#
1.2.2 复制文件
cp web.log web_cp.log
[root@node01 test02]# cp web.log web_cp.log
[root@node01 test02]# ls
web_cp.log web.log
[root@node01 test02]#
复制文件,加个-r 参数,代表遍历复制,此时可用于复制一个目录。
1.2.3 删除文件
rm web_cp.log -f
-f 代表直接删除,无需确认,可不加,需要手动确认删除
[root@node01 test02]# rm -f web_cp.log
[root@node01 test02]# ls
web.log
[root@node01 test02]#
1.2.4 查看
1.2.4.1 查看目录下的东西
ls / ll
命令 ls -l 等价于 ll
查看目录下的所有东西(包括隐藏文件)
命令:ls –al 等价于 ll –a
[root@node01 test02]# ls
web.log
[root@node01 test02]# ll
total 0
-rw-r--r--. 1 root root 0 Dec 18 04:42 web.log
[root@node01 test02]# ll -a
total 8
drwxr-xr-x. 2 root root 4096 Dec 18 04:45 .
dr-xr-xr-x. 23 root root 4096 Dec 18 04:40 ..
-rw-r--r--. 1 root root 0 Dec 18 04:42 web.log
[root@node01 test02]#
1.2.4.2 查看文件内容
cat filename: 一次性显示整个文件的内容
注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。
因此,一般用more等命令分屏显示.
more filename 该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示的该文件的百分比。
按Space键,显示文本的下一屏内容。
按Enier键,只显示文本的下一行内容。
按B键,显示上一屏内容。
按Q键,退出。
1.2.4.3 从头打印文件内容
head -10 filename 打印文件1到10行
[root@node01 test02]# head -10 /etc/profile
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
# It's NOT a good idea to change this file unless you know what you
# are doing. It's much better to create a custom.sh shell script in
# /etc/profile.d/ to make custom changes to your environment, as this
# will prevent the need for merging in future updates.
[root@node01 test02]#
1.2.4.4 从尾部打印文件内容
tail -10 filename 打印文件最后10行
注意:tail 还经常可以拿来查看文件的内容变化
加-f参数,命令: tail –f filename
1.2.4.5 Linux 向文件末尾追加命令
//echo后边用单引号包围要添加的内容 >>
echo ‘add content’>>/home/data/test.sh
//删除原有文档所有内容,追加 >
echo ‘add content’>/home/data/test.sh
1.2.5 查找文件或目录
find pathname –name filename
例子:find / -name profile
该命令表示为,在/目录下查找 名字为profile的文件或目录,最后列出它的绝对路径
最后发现,linux系统根目录/ 下 一共有两个名字为profile,其中/etc/profile是一个文件,/etc/lvm/profile为目录
[root@node01 test02]# find /etc -name profile
/etc/profile
/etc/lvm/profile
[root@node01 test02]# cat /etc/lvm/profile/
cat: /etc/lvm/profile/: Is a directory
[root@node01 test02]#
二,文本编辑
2.1 vi
编辑模式
vi filename :打开或新建文件,并将光标置于第一行首
vi +n filename :打开文件,并将光标置于第n行首
vi + filename :打开文件,并将光标置于最后一行首
vi +/pattern filename:打开文件,并将光标置于第一个与 pattern匹配的串处
命令行模式
• w保存
• q退出
• q!:不保存文件并退出vi
– 在VI的命令模式下输入“:set nu”,就有行号了。
– 在VI的命令模式下输入“:set nonu”,取消行号。
一般模式
• yy 复制光标所在行(常用)
• nyy 复制光标所在行的向下n行,例如, 20yy则是复制20行(常用)
• p,P p为复制的数据粘贴在光标下一行, P则为粘贴在光标上一行(常用)
G:光标移至第最后一行
nG:光标移动至第N行行首
n+:光标下移n行
n-:光标上移n行
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行
• dd:删除 行
x或X:删除一个字符,x删除光标后的,而X删除光标前的
• u 恢复前一个动作(常用)
删除第N行到第M行:
:N,Md
从N开始删除到倒数M
:N,$-Md
2.2 vim
安装vim 软件
yum install vim -y
测试效果
vim /etc/profile
三,文件传输
3.1 远程拷贝
3.1.1 将本地文件复制到远程机器
scp local_file remote_username@remote_ip:remote_folder
local_file: 本地的文件名
remote_username : 远程及其的角色名 如 root
remote_ip: 远程 ip
remote_folder : 拷贝到远程的目录
第一次远程拷贝时,需要输入yes确认一下,验证一下远程主机。然后再输入一下远程主机的密码。
3.1.2 将本地目录复制到远程机器
scp -r local_folder remote_username@remote_ip:remote_folder
3.2 上传
需先安装好lrzsz : yum install lrzsz -y
yum install lrzsz -y
安装好后,输入上传的命令rz, window中弹出上传界面,选择文件即可
rz
3.3 下载
下载命令为 sz ,sz命令只能下载文件,不能是目录,可先将目录压缩成一个包,再下载至windows系统。下载完之后,按ctrl+c结束。
sz
四,网络指令
4.1 查看网络配置信息
命令**: ifconfig**
[root@node01 test02]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:AA:EA:DF
inet addr:192.168.150.101 Bcast:192.168.150.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:feaa:eadf/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:20597 errors:0 dropped:0 overruns:0 frame:0
TX packets:8841 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:21455338 (20.4 MiB) TX bytes:1233804 (1.1 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
[root@node01 test02]#
inet addr : 指的是本机地址
Bcast : 广播地址
Mask : 子网掩码
4.2 显示各种网络相关信息
命令:
[root@node01 test02]# netstat -anpt
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1046/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1124/master
tcp 0 64 192.168.150.101:22 192.168.150.1:55962 ESTABLISHED 1169/sshd
tcp 0 0 :::22 :::* LISTEN 1046/sshd
tcp 0 0 ::1:25 :::* LISTEN 1124/master
[root@node01 test02]#
-a (all)显示所有选项,默认不显示LISTEN相关
-t (tcp)仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化成数字。
-l 仅列出有在 Listen (监听) 的服務状态
-p 显示建立相关链接的程序名
-r 显示路由信息,路由表
-e 显示扩展信息,例如uid等
-s 按各个协议进行统计
-c 每隔一个固定时间,执行该netstat命令。
提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到
五,系统配置
5.1 主机名配置
若要修改主机名字,可在/etc/sysconfig/network文件里修改
vim /etc/sysconfig/network
[root@node01 test02]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=node01
~
~
注意:改完主机名,机器重启才能生效
5.2 DNS配置
hosts文件的作用相当于DNS,提供IP地址hostname的对应,可在这个文件里添加映射。域名解析
vi /etc/hosts
[root@node01 test02]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.150.101 --你的ip node01 --别名
192.168.150.102 node02
测试:直接ping 主机名
[root@node01 test02]# ping node01
PING node01 (192.168.150.101) 56(84) bytes of data.
64 bytes from node01 (192.168.150.101): icmp_seq=1 ttl=64 time=0.069 ms
64 bytes from node01 (192.168.150.101): icmp_seq=2 ttl=64 time=0.038 ms
64 bytes from node01 (192.168.150.101): icmp_seq=3 ttl=64 time=0.037 ms
Liunx中配置 jdk tomcat 链接 -->