Linux系统中一些常用必须掌握的指令

本文介绍了Linux系统中常用的基础命令,如查看目录、切换目录、文件操作、进程管理、文件压缩解压等,还涉及了vim编辑器的使用以及Java编程的基本命令,重点讲解了SSH安全通信协议及其在Hadoop管理中的应用。
摘要由CSDN通过智能技术生成

Linux系统中一些常用必须掌握的指令

1)查看当前目录

pwd命令用于显示当前目录,效果如下所示。

[hhj@localhost ~]$ pwd

/home/hhj

2)切换目录

cd命令用来切换目录,效果如下所示。

[hhj@localhost ~]$ cd /usr/local

[hhj@localhost local]$ pwd

/usr/local

3)列出文件内容(list)

ls命令用于查看文件与目录,效果如下所示。

[hhj@localhost ~]$ ls

Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos

4)创建目录

mkdir命令用于创建目录,效果如下所示。

[hhj@localhost ~]$ mkdir TestData

[hhj@localhost ~]$ ls

Desktop    Downloads  Pictures  Templates  Videos

Documents  Music      Public    TestData

5)拷贝文件或目录

cp命令用于拷贝文件,若拷贝的对象为目录,则需要使用-r参数,效果如下所示。

[hhj@localhost ~]$ cp -r TestData TestData2

[hhj@localhost ~]$ ls

Desktop    Downloads  Pictures  Templates  TestData2

Documents  Music      Public    TestData   Videos

6)移动或重命名文件或目录

mv命令用于移动文件,在实际使用中,也常用于重命名文件或目录,效果如下所示。

[hhj@localhost ~]$ mv TestData2 TestDataxlh

[hhj@localhost ~]$ ls

Desktop    Downloads  Pictures  Templates  TestDataxlh

Documents  Music      Public    TestData   Videos

7)删除文件或目录

rm命令用于删除文件,若删除的对象为目录,则需要使用-r参数,效果如下所示。

[hhj@localhost ~]$ rm -rf TestDataxlh

[hhj@localhost ~]$ ls

Desktop    Downloads  Pictures  Templates  Videos

Documents  Music      Public    TestData

8)查看进程

ps命令用于显示当前运行中进程的相关信息,效果如下所示。

[hhj@localhost ~]$ ps

   PID TTY        TIME CMD

 69780 pts/0    00:00:00 bash

 71680 pts/0    00:00:00 ps

9)压缩与解压文件

tar命令用于文件压缩与解压,参数中的c表示压缩,x表示解压缩,效果如下所示。

[root@localhost local]# tar -zxvf /home/hhj/Downloads/hadoop-2.9.2.tar.gz

10)查看文件内容

cat命令用于查看文件内容,效果如下所示。

[hhj@localhost ~]# cat /usr/local/hadoop-2.9.2/etc/hadoop/core-site.xml

11)查看机器IP配置

ip address命令用于查看机器IP配置,效果如下所示。

[hhj@localhost ~]$ ip address

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

    inet 127.0.0.1/8 scope host lo

       valid_lft forever preferred_lft forever

    inet6 ::1/128 scope host

       valid_lft forever preferred_lft forever

2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

    link/ether 00:0c:29:6d:5d:c9 brd ff:ff:ff:ff:ff:ff

    inet 192.168.18.128/24 brd 192.168.18.255 scope global noprefixroute dynamic ens33

       valid_lft 1795sec preferred_lft 1795sec

    inet6 fe80::6bb8:6e80:d029:10f2/64 scope link noprefixroute

       valid_lft forever preferred_lft forever

3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000

    link/ether 52:54:00:0b:74:1b brd ff:ff:ff:ff:ff:ff

    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0

       valid_lft forever preferred_lft forever

4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000

    link/ether 52:54:00:0b:74:1b brd ff:ff:ff:ff:ff:ff

ifconfig命令也可用于查看机器IP配置:

[hhj@localhost ~]$ ifconfig

(二)vim编辑器

vim是一个类似于vi的著名的功能强大、高度可定制的文本编辑器,在vi的基础上改进和增加了很多特性,vim是vi的加强版,比vi更容易使用,vi的命令几乎全部都可以在vim上使用。

vi/vim共分为三种工作模式:命令模式(Command mode)、输入模式(Insert mode)和末行模式(Last line mode)。用户刚刚启动vi/vim,便进入了命令模式,此状态下敲击键盘动作会被vim识别为命令,而非输入字符,命令模式下是常用的几个命令包括:“i”切换到输入模式,以输入字符;“x”删除当前光标所在处的字符;“:”切换到末行模式,以在最底端一行输入命令。在命令模式下按下“i”就进入了输入模式,在输入模式中,可以使用若干按键完成相应任务,例如字符按键以及Shift组合,输入字符;Insert按键切换光标为输入/替换模式,光标将变成竖线/下划线;ESC按键退出输入模式,切换到命令模式等。在命令模式下按下“:”(英文冒号)就进入末行模式,末行模式下可以输入单个或多个字符的命令,可用的命令非常多,例“q”可以退出程序,“w”用于保存文件等,按ESC键可随时退出末行模式。vi/vim三种工作模式的转换如图1-2所示。

图1-2  vi/vim三种工作模式

vim是实验中用到最多的文件编辑命令。在命令行输入“vim 文件名”后,默认进入“命令模式”,不可编辑文档,需按“i”键,方可编辑文档,编辑结束后,需按“ESC”键,先退回命令模式,再按“:”进入末行模式,接着输入“wq”方可保存退出。

(三)Java基本命令

在安装和配置Java后,可以使用Java命令来编译、运行或者打包Java程序。

1)查看Java版本

[root@localhost ~]# java -version

2)查看当前所有Java进程

jps(Java Virtual Machine Process Status Tool)是Java提供的一个显示当前所有Java进程pid的命令,适合在linux/unix平台上简单察看当前Java进程的一些简单情况,如下所示。

[root@localhost ~]$ jps

11973 Jps

3)编译Java程序

[root@localhost ~]# javac HelloWorld.java

4)运行Java程序

[root@localhost ~]# java HelloWorld

5)打包Java程序

[root@localhost ~]# jar -cvf HelloWorld.jar HelloWorld.class

由于打包时并没有指定manifest文件,因此该jar包无法直接运行,如下所示。

[root@localhost ~]# java -jar HelloWorld.jar

no main manifest attribute, in HelloWorld.jar

6)打包携带manifest文件的Java程序

manifest.mf文件用于描述整个Java项目,最常用的功能是指定项目的入口类,新建文件“manifest.mf”,文件内容输入“Main-Class: HelloWorld”。

[root@localhost ~]# vim manifest.mf

打包时,加入-m参数,并指定manifest文件名。

[root@localhost ~]# jar -cvfm HelloWorld.jar manifest.mf HelloWorld.class

added manifest

adding: HelloWorld.class(in = 430) (out= 295)(deflated 31%)

7)运行jar包

可使用“java”命令直接运行jar包。

[root@localhost ~]# java -jar HelloWorld.jar

Welcome to Java.

(四)SSH安全通信协议

对于远程管理其它机器,一般使用远程桌面或者telnet。Linux安装时自带了telnet,但是telnet的缺点是通信不加密,存在不安全因素,只适合内网访问。为解决这个问题,推出了安全通信协议即SSH(Secure Shell),通过SSH可以安全地进行网络数据传输,这得益于SSH采用的是非对称加密体系,传输内容使用RSA或者DSA加密,可以避免网络窃听。

非对称加密的工作流程包括以下几个步骤:服务端接受到远程客户端登陆请求,将自己的公钥发送给客户端;客户端利用这个公钥对数据进行加密;客户端将加密的信息发送给服务端;服务端利用自己的私钥进行解密,验证其合法性;验证结果返回客户端响应。

不过需要注意的是,Hadoop并不是通过SSH协议进行数据传输的,而是Hadoop控制脚本需要依赖SSH来执行针对整个集群的操作。Hadoop在启动和停止HDFS、YARN的时候,需要主节点上的进程通过SSH协议启动或停止从节点上的各种守护进程。也就是说如果不配置SSH免密登录对Hadoop的使用没有任何影响,只需在启动和停止Hadoop时输入每个从节点的用户名和密码即可。试想,若管理成百上千个节点组成的Hadoop集群,连接每个从节点时都输入密码将是一项繁杂的工作。因此,配置Hadoop主节点到各个从节点的SSH免密登录是有需要的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值