Linux学习

常用命令

系统信息

arch //显示机器的处理器架构 x86_64
uname -m //显示机器的处理器架构 x86_64
date //显示日期 
uname -r //显示正在使用的内核版本 
cal 2019 //显示2019年日历

系统的关机、重启以及登出

shutdown -h now (10:51)  //现在(10:51)关机
shutdown -c //取消定时关机
init 0  //关机
telinit 0 //关机
shutdowm -r now //重启
reboot //重启
logout //注销

文件和目录
1、cd命令

cd /home //进入 '/ home' 目录' 
cd .. //返回上一级目录 
cd ../.. //返回上两级目录 
cd //进入目录 
cd ~ // 进入个人的主目录 
cd - //返回上次所在的目录 

2、pwd命令

pwd // 查看文件路径

3、ls命令

ls //查看目录中的文件 
ls -F //查看目录中的文件 
ls -l //显示文件和目录的详细资料  结果跟ll一致
ls -a //显示隐藏文件 
ls *[0-9]* //显示包含数字的文件名和目录名  不常用

5、mkdir命令

mkdir dir1 //创建一个叫做 'dir1' 的目录' 
mkdir dir1 dir2 //同时创建两个目录 
mkdir -p /tmp/dir1/dir2 //创建一个目录树 

6、删除rm命令

rm -r file1 //删除一个叫做 'file1' 的文件' 
rmdir dir1 //删除一个叫做 'dir1' 的目录(**注意不是文件夹**)' 
rm -rf dir1 //删除一个叫做 'dir1' 的目录并同时删除其内容 
rm -rf dir1 dir2 //同时删除两个目录及它们的内容 

7、移动mv命令

mv dir1 new_dir //重命名/移动一个目录

8、CP复制命令

cp -r A B //将A拷贝到B目录下 -r代表递归 
cp dir/* . 复制一个目录下的所有文件到当前工作目录 (注意这个点一定要有)
cp -a /tmp/dir1 . 复制一个目录到当前工作目录  (注意这个点一定要有)

文件搜索
1、find查找命令

find / -name file1 //从 '/' 开始进入根文件系统搜索文件和目录 
find / -user user1 //搜索属于用户 'user1' 的文件和目录 
find /home/user1 -name \*.bin //在目录 '/home/user1' 中搜索带有'.bin' 结尾的文件 
find /usr/bin -type f -atime +100 //搜索在过去100天内未被使用过的执行文件 
find /usr/bin -type f -mtime -10 //搜索在10天内被创建或者修改过的文件 

挂载一个文件系统

mount /dev/hda2 /mnt/hda2 //挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在 
umount /dev/hda2 //卸载一个叫做hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出 
fuser -km /mnt/hda2 //当设备繁忙时强制卸载 
umount -n /mnt/hda2 //运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用 
mount /dev/fd0 /mnt/floppy //挂载一个软盘 
mount /dev/cdrom /mnt/cdrom //挂载一个cdrom或dvdrom 
mount /dev/hdc /mnt/cdrecorder //挂载一个cdrw或dvdrom 
mount /dev/hdb /mnt/cdrecorder //载一个cdrw或dvdrom 
mount -o loop file.iso /mnt/cdrom //挂载一个文件或ISO镜像文件 
mount -t vfat /dev/hda5 /mnt/hda5 //挂载一个Windows FAT32文件系统 
mount /dev/sda1 /mnt/usbdisk //挂载一个usb 捷盘或闪存设备 
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享 

用户和群组

groupadd group_name //创建一个新用户组 
groupdel group_name //删除一个用户组 
groupmod -n new_group_name old_group_name //重命名一个用户组 
useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 //创建一个属于 "admin" 用户组的用户 
useradd user1 创建一个新用户 
userdel -r user1 删除一个用户 ( '-r' 排除主目录) 
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性 
passwd 修改口令 
passwd user1 修改一个用户的口令 (只允许root执行) 
chage -E 2005-12-31 user1 设置用户口令的失效期限 
pwck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的用户 
grpck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的群组 
newgrp group_name 登陆进一个新的群组以改变新创建文件的预设群组 

面试常问命令

ps //查看当前进程
pwd //查看路径
exit //退出终端
clear //清屏
ctrl c //退出当前命令
ctrl z //挂起当前进程   fg 恢复后台
id //查看用户id
touch a.txt //创建文件
mkdir a.txt  //创建一个名为a.txt的文件夹

mode : 权限设定字串,格式如下 :
[ugoa…][[±=][rwxX]…][,…]
其中:
u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。u用户 g组 o其它 a 所有用户(默认)

  • 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
    r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。
实例:
 
$ chmod u+x file                      给file的属主增加执行权限
$ chmod 751 file                      给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限
$ chmod u=rwx,g=rx,o=x file      上例的另一种形式
$ chmod =r file                     为所有用户分配读权限
$ chmod 444 file                   同上例
$ chmod a-wx,a+r   file          同上例
$ chmod -R u+r directory           递归地给directory目录下所有文件和子目录的属主分配读的权限
$ chmod 4755                            设置用ID,给属主分配读、写和执行权限,给组和其他用户分配读、执行的权限。

查看文件内容

vi 文件名 #编辑方式查看,可修改
cat 文件名 #显示全部文件内容
more 文件名 #分页显示文件内容
less 文件名 #与 more 相似,更好的是可以往前翻页
tail 文件名 #仅查看尾部,还可以指定行数
head 文件名 #仅查看头部,还可以指定行数

终端是哪个文件夹下的哪个文件?黑洞文件是哪个文件夹下的哪个命令?
终端 /dev/tty
黑洞文件 /dev/null

Linux 下命令有哪几种可使用的通配符?分别代表什么含义?
“?”可替代单个字符。
“*”可替代任意多个字符。
方括号“[charset]”可替代 charset 集中的任何单个字符,如[a-z],[abABC]

用什么命令对一个文件的内容进行统计?(行号、单词数、字节数)
wc 命令 - c 统计字节数 - l 统计行数 - w 统计字数。

wc -c dyn.txt //t统计字节数
wc -l dyn.txt  //统计行数
wc -w dyn.txt //统计字数

Linux 中进程有哪几种状态?在 ps 显示出来的信息中,分别用什么符号表示的?
**不可中断状态:**进程处于睡眠状态,但是此刻进程是不可中断的。不可中断, 指进程不响应异步信号。
**暂停状态/跟踪状态:**向进程发送一个 SIGSTOP 信号,它就会因响应该信号 而进入 TASK_STOPPED 状态;当进程正在被跟踪时,它处于 TASK_TRACED 这个特殊的状态。
“正在被跟踪”指的是进程暂停下来,等待跟踪它的进程对它进行操作。
**就绪状态:**在 run_queue 队列里的状态
**运行状态:**在 run_queue 队列里的状态
**可中断睡眠状态:**处于这个状态的进程因为等待某某事件的发生(比如等待 socket 连接、等待信号量),而被挂起
**zombie 状态(僵尸):**父亲没有通过 wait 系列的系统调用会顺便将子进程的尸体(task_struct)也释放掉
退出状态

D 不可中断 Uninterruptible(usually IO)
R 正在运行,或在队列中的进程
S 处于休眠状态
T 停止或被追踪
Z 僵尸进程
W 进入内存交换(从内核 2.6 开始无效)
X 死掉的进程

怎么使一个命令在后台运行?
一般都是使用 & 在命令结尾来让程序自动运行。(命令后可以不追加空格)

使用什么命令查看网络是否连通?

netstat -pan | grep 33056
lsof -i:3306

使用什么命令查看 ip 地址及接口信息?
ifconfig

查看各类环境变量用什么命令?
查看所有 env
查看某个,如 home: env $HOME

查看端口号

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值