从零开始学Linux系统(二)之基本操作指令

时间:2023-12-21 16:49:50

ifconfig
ping ip地址
帮助:ping -t ip地址
ping -c 次数 ip地址
ping -s 包的大小
关机重启:
shutdown -h now
reboot
清屏:clear  == Ctrl + l
光标前删除一行  Ctrl + u
history !命令号
alias
定义别名: alias copy=cp   xrm=“rm -r”
删除别名: unalias copy

查看(除内置命令)命令、配置文件的帮助:man/info 名字(不加路径) 注:帮助分9种 1:命令  5:配置文件 (优先命令)
查看shell内置命令的帮助:help 命令名
获得命令简短用途信息::whatis 命令名
获得配置文件简短用途信息:apropos 配置文件名   相当于「man -k 名字」
注:建立whatis和apropos命令搜索使用的数据库:makewhatis
只查看帮助信息:命令名 —-help

标准输入:0 标准输出:1 错误输出:2
输出重定向:  覆盖>      追加 >>
输入重定向:  <  
注:cp -R /usr  /backup/usr.bak  2>bak.error  {将备份失败的信息写入指定文件}

命令1的输出作为命令2的输入:
管道: 命令1 | 命令2      
命令替换符: 命令2 `命令1`

命令连接符:
顺序执行: ;
逻辑与:&&
逻辑或:||

查找命令:which/whereis 命令名
文件搜索:find 路径 关键字
                 -name 文件名   通配符:* ?
                 -size 文件大小  大小:+ -   以block为单位
                 -user 文件所有者
                 -tyep -f二进制文件  -l软连接文件 -d目录
                 -inum 节点序号   可以用『ls -i』来查看文件的节点序号
时间:
天                -ctime -atime -mtime
分                -cmin  -amin  -mmin
-之内 +超过  
例:find /etc -mmin -120

连接符: -a 与 、 -o 或 、 -exec/-ok(有询问过程)
例: find …… -exec 后续指令 {} \;
    find /home -user samlee -exec rm -rf {} \;   删除某路径下所有者为指定用户的文件
    find /home -inum 16 -ok rm {} \;  百试百灵的删除文件方法

find   /* | xargs  grep  "Username"  查找出文件中包含Username的文件
注:{}find查询的结果      \转义符,符号命令使用本身的含义

扩展:https://blog.csdn.net/statdm/article/details/7718614

Linux特有的查找指令:
locate 文件名  配合:updatedb命令

grep 指定字串 源文件

添加用户:
useradd 用户名
passwd 密码

切换用户:
su -  用户名

权限管理:
chmod  
u-所有者  g-所属组  o-其他人
r-4-可读  w-2-可写  x-1-可执行
例如:chmod u+wx  文件名    或     chmod 641 文件名
默认权限:

linux下,新创建的文件夹的默认权限是755
linux下,新创建的文件的默认权限是644
计算方法:umask -S   0022    // 777-022 = 755
修改:umask 027     // 777-027 = 750 修改为750的权限   
注:linux权限规则:缺省创建的文件不能授予可执行x权限,所以实际是644

改变所有者,所属组:
chown 用户名 文件名
chgrp 组名  文件名

chown 用户名:组名 文件路径

例1: 修改data目录下的html文件夹的用户名和用户组为root和root(仅更改html)

$ chown root:root /data/html
例2: 修改data目录下的html下的所有文件的用户名和用户组为root和root

$ chown -R root:root /data/html

用户间实时交流:不在线的用户永远收不到

write 用户名   内容   Ctrl+d退出   
Wall 内容 Ctrl+d退出  发送给所有人

cd / 根目录
cd ./当前目录  pwd
cd ../父目录

操作文件、目录
cp    cp -R
ls -a -d -l
cp -r :拷贝文件夹
mv:移动+重命名
mkdir
rm -f:不询问
rm -r:删除目录
touch :创建空文件
注:文件单位大小不是k,是block;1 block=512字节

查看文件
cat
more  空格/enter  q退出
head -rownum
tail -rownum/-f

ln -s 软连接  :符号链接(类似windows快捷方式)可以跨分区
ln    硬链接  :(类似拷贝【cp -p】+同步更新【ls -i】文件必须有i节点,一个i节点可以对应多个文件)  不能跨分区
注:cp -p :拷贝过去,时间值不变

压缩解压: .bz2   .gz    .tar.gz   .zip
.bz2  不能压缩目录,不保留源文件,压缩比惊人
压缩:bzip2 文件名   bzip2 -k 文件名 {保留源文件}
解压:bunzip2 文件名

.gz   不能压缩目录,不保留源文件
压缩文件:gzip 文件名   
解压文件:gunzip 文件 或  gzip -d 文件

.tar.gz  压缩目录
压缩目录:  tar:将目录打包成文件
       tar -zcvf  打包文件名.tar.gz  目录      打包+压缩
解压目录:  tar -zxvf  打包文件名.tar.gz

.zip  linux和window的通用格式
压缩文件: zip 压缩包名 文件名
压缩目录:zip -r  压缩包名 文件名
解压缩:unzip 压缩包名

判断文件类型:    file 文件名
显示主机名称   hostname  
注:  如果要永久修改主机名,对应的文件/etc/sysconfig/network

1.安装jdk
    1)增加执行权限    chmod 777 jdk******
    2)解压缩    ./jdk*******
    3)重命名  mv jdk*****  jdk
    4)设置环境变量,执行vi  /etc/profile
            增加两行记录    export JAVA_HOME=/usr/local/jdk
                                        export PATH=.:$JAVA_HOME/bin:$PATH
            保存退出
    5)立即生效 source  /etc/profile
    验证成功:执行java -version
                
                
2.使用ssh免密码登录
    1)产生密钥   ssh-keygen -t rsa
            三次回车,在/root/.ssh/下产生两个文件
    2)创建授权文件
            cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
    验证:ssh localhost 不需要输入密码
    退出?exit命令