Linux基础命令

Linux简介

1.免费开源,支持多用户,多任务,多线程,多CPU
2.性能稳定的多用户网络操作系统
3.文件夹也是文件

Linux基础命令

常用命令

pwd——以绝对路径的形式显示当前位置
ls——列出指定目录下的内容
ls -l:列出每个子文件的属性
ls -a:显示所有内容
ls -l -a:显示所有内容的属性
ls -lhS:显示当前目录下的所有内容,并降序排序
ls -lhS /etc:显示指定目录下的所有内容,并降序排序
cd——切换空间
cd 返回到根目录
cd ..:上一级目录
cd /etc:切换到/etc下

文件操作命令

创建文件

touch filename
touch file file2

创建目录

mkdir [-p] dirname
mkdir /etc/shx

删除文件或目录

rm [-rf] filename
rm file1
rm -r dir1//删除目录必须加r
rm -f file1//强制删除
rm -rf ./*   //删除当前目录下所有非隐藏文件

移动文件

mv [OPTION]  SOURCE  DIRECTORY
mv file1 file2 dir1//将file1,file2移动到dir1
mv file1 dir1/file2//将file1移动到dir1并改名为file2

拷贝文件或目录

cp [-r] source  directory
cp file1 dir1  //拷贝file1到dir1
cp file1 dir1/file2 //复制file1的内容到dir1并更名为file1
cp -r dir1 dir2 //拷贝目录

创建链接文件

ln [-s] filename newfilename
软链接文件:文件和目录都可以有软链接
ln -s filename newfilename
硬链接文件:文件有硬链接,目录不能有硬链接
ln filename newfilename

展示一行文件信息

echo 字符串|环境变量
echo hello world
echo $HOME
echo "hello Hadoop world!" > a.txt //将字符写入文件,如文件不存在则会创建文件
echo "hello Python world!" > a.txt //覆盖
echo "hello Java world!" >> a.txt //追加字符

文件查看命令

//查看整个文件内容
cat [-An] filename
-A 显示隐藏字符
-n 显示行号

//分页查看文件内容
more filename

//查看文件头部信息
head [-number] filename //默认看十行

//查看尾部信息
tail [-number] filename //默认看十行

文件查找指令

find 搜索位置 条件
find /etc -name 'ha*' //查找名字ha开头的文件或目录
find /etc -name 'Hadoop' //查找名字为Hadoop的文件
find /etc -name 'ha?' //查找名字为ha开头,并长度为3的文件
find /etc -type d/l/f   //查找/etc目录下的所有目录/软链接/普通文件

grep [-cniv] '要找的字符串' filename
grep -c hello ./a.txt //hello所在行的数量
grep -n hello ./a.txt //hello所在行信息he行号
grep -i hello ./a.txt //忽略大小写查看hello所在行信息
grep -v hello ./a.txt //查看除了hello所在行的其他行信息

文件解压缩

gzip/gunzip

作用:将每一个文件进行压缩,一个文件对应一个压缩文件
gzip filename
//只能压缩文件
//源文件消失
//文件后缀.gz

gzip -d filename //解压缩

zip需要安装

作用:将多个文件或者目录压缩到一个压缩文件中
zip [-r] compressfilename.zip file1 file2
//保留源文件
//需自定义压缩文件名
//压缩目录,必须添加 -r 参数

tar

作用:打包指令,将多个文件打成一个包
tar -[cxvf] tarfilename.tar 路径
//-c:打包
//-x:拆包
//-v:显示压缩过程
//-f:指定新文件名,必须和新文件名挨着
tar -xzvf filename.tar 路径  //解压缩拆包

切换用户账户

su [用户名]
su root

SCP指令

scp [-r] filename 用户名@机器IP:路径
scp a.txt root@master:~/

Linux文件属性解析

[root@master ~]#  ls -l 
-rw-r--r--  1     root  root   302    7月22 9:24  file1  
【 1 】    【2】   【3】  【4】   【5】    【6】      【7】

解析:
   第一列:由10个字符组成。第一个字符表示文件类型,第2~10个字符表示权限
         权限由9个字符构成: 前三个字符表示owner拥有的权限
                          中间三个字符表示group下的所有成员拥有的权限
                          后三个字符表示other的权限
   第二列:文件的硬链接数
   第三列:owner的名称
   第四列:group的名称
   第五列:文件大小
   第六列:该文件的最后一次访问时间    
   第七列:该文件名

修改文件所有者

chown [-R] [newOwner] filename       该指令只能是root用户使用
参数: -R 表示递归修改拥有者

//改变文件file1的所有者为root
	chown  root  file1
//修改目录dir1及其子目录和文件的拥有者为root
	chown -R root: dir1
           

软件管理

二进制安装

特点:简单方便但缺乏灵活性

JDK的安装

  1. 将jdk的二进制包上传到指定路径下,例如:/usr/java

  2. 解压

    tar -xzvf /usr/java/jdk-8u171-linux-x64.tar.gz -C /usr/java
    
  3. 配置环境变量

    #java envirment
    export JAVA_HOME=/usr/java/jdk1.8.0_171
    export CLASSPATH=$JAVA_HOME/lib
    export PATH=$JAVA_HOME/bin:$PATH
    
  4. 生效环境变量

    [root@master ~]# source /etc/profile
    

rpm机制安装

常用指令

rpm -qa  //检查系统内已安装的程序
rpm -qa | grep 程序名  //用于查询指定的程序是否已经安装 
rpm -qa  //列出所有已经安装在Linux系统下的程序名称
rpm -qi 程序名  //列出该程序的详细信息 ,如版本号,发行时间,安装时间等
rpm -ql 程序名  //列出该程序所有的文档与目录
rpm -qc 程序名  //列出该程序的所有配置文件
rpm -qd 程序名  //列出该程序的所有说明文档 (指与 man 有关的文件)
rpm -qR 程序  //列出与该程序有关的依赖软件所含的文件
rpm [-ivh] 软件包
-i	:安装
-v	:安装过程中显示详情
-h	:以进度条的形式显示安装进度
-e  :卸载

yum安装机制

查询功能

yum list all  //列出yum源仓库里面的所有可用的安装包
yum list installed  //列出所有已经安装的安装包
yum list available  //列出没有安装的安装包 
yum info [软件名]  //查看软件的信息
yum search [关键字]  //根据关键字查找到相关安装包软件的信息

安装/卸载

yum [install | update| reinstall | remove ] [软件名]
yum install -y ntp  //检查是否有ntp,没有则安装
yum install appname  //安装指定的软件
yum reinstall appname  //重新安装指定的软件
yum update  [appname]  //升级指定软件,不指定软件时,升级整个系统的软件
yum remove appname  //卸装指定的软件

免密登录

机器1:
ssh-keygen #回车回车
cd /root/.ssh/
cat id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
ssh localhost //判断是否成功
scp id_rsa.pub 机器2:~/.ssh/authorized_keys

时间同步

软件准备

yum -y install ntp

同步服务器时间

ntpdate -u ntp1.aliyun.com  //阿里云服务器
ntpdate -u time.windows.com  //微软服务器

集群时间同步

选择一个机器作为时间服务器

时间服务器保证ntpd服务正常运行

[root@master ~]# systemctl start ntpd
[root@master ~]# systemctl enable ntpd
[root@master ~]# systemctl statua ntpd

时间服务器配置文件

vi /etc/ntp.conf
添加:
 server 127.127.1.0
 fudge 127.127.1.0 stratum 10
 保存退出
 systemctl status ntpd
 systemctl start ntpd

其他机器

ntpdate -u master
posted @ 2022-07-22 12:44  就薛就薛  阅读(73)  评论(0)    收藏  举报