你需要知道的linux基础编程(二)
压缩包管理
gzip bzip2
gzip .gz格式的压缩包 压缩后不保留源文件(gzip 文件名)
bzip2 .bz2格式的压缩包 压缩后可以保留源文件(bzip2 -k 文件名)
这两个压缩工具都不能压缩目录tar rar zip
- tar (不使用z/j参数,该命令只能对文件或目录打包)
- 参数:
c 创建 压缩
x 释放 解压缩
c 显示提示信息 压缩解压缩 可以省略
f 指定压缩文件的名字
z 使用gzip的方式压缩文件 后缀名为.gz
j 使用bizp2的方式压缩文件 后缀名为.bz2 - 压缩
tar zcvf 生成压缩包的名字(xxx.tar.gz) 要压缩的文件或目录
tar jcvf 生成压缩包的名字(xxx.tar.bz2) 要压缩的文件或目录 - 解压缩
tar jxvf 压缩包的名字(解压到当前目录)
tar jxvf 压缩包的名字 -C(c大写) 要解压到的目录
- 参数:
- rar (必须安装该软件)
- 参数:
压缩:a
解压缩:x - 压缩:
rar a (-r) 生成的压缩文件的名字(自动添加后缀) 压缩的文件或目录 - 解压缩:
rar x 压缩文件的名字 (解压缩的目录)
- 参数:
- zip
- 参数:
-r 递归参数 - 压缩:
zip 压缩包的名字 压缩的文件或目录 - 解压缩:
unzip 压缩包的名字(解压在当前目录)
unzip 压缩包的名字 -d 指定解压目录
- 参数:
总结:相同之处
tar/rar/zip 参数 生成的压缩文件的名字 压缩的文件或目录 — 压缩的时候的语法
tar/rar/unzip 参数 压缩包的名字 参数(rar没有参数) 解压缩目录 — 解压缩语法- tar (不使用z/j参数,该命令只能对文件或目录打包)
进程管理
who
- 查看当前在线用户的情况
i. 登陆的用户名
ii. 使用的设备终端(pts)
iii. 登陆到系统的时间 - Tty设备
i. Tty1-tty6表示文字界面 ctrl+alt+(f1-f6)
ii. Tty7图形界面 ctrl+alt+f7
- 查看当前在线用户的情况
Ps(查看进程的命令)
- 参数(aux)
- a查看当前操作系统的所有用户
- u显示一些用户自己的信息
- x查看没有终端的应用程序
对文件进行过滤要用到管道,管道就是重定向
在终端下查看操作系统所有的bash进程:ps aux | grep “bash”- 参数(aux)
kill(杀死进程)
- kill -l 查看信号
- kill -sigkill(或-9) 进程号(pid) ---------杀死进程
env(查看当前进程的环境变量)
linux下的环境变量的格式:key-value
env | grep PATH --打印环境变量中的path路径Top (查看任务管理器)
网络相关的命令
- 查看网络ip : ifconfig
eth0:想当于电脑的网卡
io:回环地址 - 测试两台主机之间能否通信:ping + ip地址
参数:-c 4:返回4条信息就结束
知道域名对应的ip:nslookup + 域名
- 查看网络ip : ifconfig
用户管理:
- 创建用户
- sudo adduser + 用户名
- sudo useradd -s /bin/bash -g itcast -d /home/itcast -m itcast
i. -s 指定新用户登陆时的shell类型
ii. -g 指定所属组,该组必须已经存在
iii. -d 用户家目录
iv. -m 用户家目录不存在时,自动创建该目录
- 设置用户组(sudo groupadd + 用户组)
- 删除用户
- sudo deluser + 用户名 (家目录不会被删除,需手动删除)
- sudo userdel -r itcast -r的作用是把用户的主目录一起删除
- 切换用户(su + 用户名)
在ubuntu下切换到root用户(su -,su,sudo su) - 修改用户的密码(sudo passwd +用户名)
- 修改当前用户的密码(passwd)
- 退出当前登陆的用户(exit)
- 删除用户
- sudo deluser + 用户名(家目录需要手动删除)
- sudo userdel -r + 用户名 -r的作用是把用户的主目录一起删除
- 查看当前linux系统下的存在的用户
/etc/passwd
- 创建用户
ftp服务器的搭建(vsftpd)
作用:负责文件的上传和下载- 服务器端:
修改目录:/etc/vsftpd.conf- 修改配置文件
- 重启服务(sudo service vsftpd restart)
- 修改配置文件
- 客户端
- 实名用户登陆
i. ftp + IP(server)
ii. 输入用户名
iii. 输入密码
iv. 文件的上传:put + 文件名
v. 文件的下载:get + 文件名
vi. 不允许操作目录(如果要上传目录,要进行文件压缩) - 匿名用户登录
i. ftp + serverip
ii. 用户名:anonymous
iii. 密码:无(直接回车)
iv. 不允许匿名用户在任意目录直接切换
v. 只能在一个指定的目录范围内工作
vi. 需要在ftp服务器上创建一个匿名用户的目录 – 匿名用户的根目录 - 退出ftp服务器
i. bye
ii. quite
iii. exit - lftp客户端访问ftp服务器
- lftp一个客户端的工具
- 软件安装sudo apt-get install lftp
- 登录服务器
- 匿名
a) lftp 服务器的ip
b) login - 实名
a) lftp username@127.0.0.1 回车
b) 输入服务器密码
- 匿名
- 操作
- put 上传文件
- mput 上传多个文件
- get 下载文件
- mget 下载多个文件
- mirror 下载整个目录及其子目录
- mirror -R 上传整个目录及其子目录
- 实名用户登陆
- 服务器端:
nfs(net file system----->>>>>>>网络文件系统)服务器搭建
允许网络中的计算机之间通过TCP/Ip网络共享资源
安装:sudo apt-get install nfs-kernek-server- 服务器端:
- 创建共享目录
创建目录:mkdir(这个目录要共享) - 修改配置文件
- 修改配置文件的目录:/etc/exports
- 修改内容 /home/用户名/共享目录 * (ro/rw,sync)
- (*的意思是Ip网段)
- rw意思是可读写
- ro意思是只读
- sync实时同步
- 重启服务
sudo service nfs-kernel-server restart
- 创建共享目录
- 客户端
a. 挂载服务器共享目录
i. sudo + mount + 服务器ip + “:” + “共享目录” + 挂载位置
例子:sudo mount 192.168.32.75:/home/itcast/ /mnt
- 服务器端:
ssh服务器
- 服务器端:
- 安装ssh
i. sudo apt-get install openssh-server
ii. 查看SSH是否安装:sudo aptitude show openssh-server
- 安装ssh
- 客户端
- 远程登陆
ssh 用户名@IP 确认连接的时候一定要写yes/no - 退出登陆
logout
- 远程登陆
- 服务器端:
scp(super copy)命令(拷贝)
- 使用该命令的前提条件
目标主机已经成功安装openssh-server - 使用格式
scp -r 目标用户名@目标主机的Ip地址:/目标文件的绝对路径 /保存到本机的绝对(相对)路径 在后续会提示输入yes,要输入yes
scp -r itcast@192.168.1.100:/home/itcast/QQ_dir/ ./mytest/360
- 使用该命令的前提条件
下面的是笔者的微信公众号,欢迎关注,会持续更新c++、python、tensorflow、机器学习、深度学习、计算机视觉等系列文章,公众号中内含300+本pdf电子书籍,肯定有你需要的一本,关注公众号即可领取哦。
如果你对JAVA方面感兴趣,可以关注下面JAVAERS公众号,陪你一起学习,一起成长,一起分享JAVA路上的诗和远方。在公众号里面都是JAVA这个世界的朋友,公众号每天会有技术类文章,面经干货,也有进阶架构的电子书籍,如Spring实战、SpringBoot实战、高性能MySQL、深入理解JVM、RabbitMQ实战、Redis设计与实现等等一些高质量书籍,关注公众号即可领取哦。
你需要知道的linux基础编程(二)相关推荐
- 每个程序员都应该知道的Linux基础知识!全文4900字,没有耐心的不建议看 ——( Linux文件系统 + 系统管理类命令 + bash基础特性)
文章目录 - Linux的文件系统 - LSB - FHS - 根文件系统 - 对根文件系统下目录的概述: /boot /bin /sbin /lib /lib64 /etc /home /root ...
- linux网络编程二:基础socket, bind, listen, accept, connect
linux网络编程二:基础socket, bind, listen, accept, connect 1. 创建socket #include <sys/types.h> #inc ...
- 初学者必须要知道的FPGA基础知识
初学者必须要知道的FPGA基础知识 一.FPGA是什么? 在<FPGA至简设计原理与应用>一书里是这样描述的:『FPGA的全称为Field-Programmable Gate Array, ...
- 必须知道的linux命令,29 个你必须知道的 Linux 命令
虽然Linux发行版支持各种各样的饿GUI(graphical user interfaces),但在某些情况下,Linux的命令行接口(bash)仍然是简单快速的.Bash和 Linux Shell ...
- 29 个你必须知道的 Linux 命令
29 个你必须知道的 Linux 命令 2016-08-12 分类:操作系统.编程开发.首页精华暂无人评论 来源:dwqs 分享到:更多0 虽然Linux发行版支持各种各样的饿GUI(g ...
- Linux 串口编程二 深入了解 termios
前言 这一系列串口编程重点在应用层编程,但是在讲解原理与相关概念时需要对驱动框架有个基础的认识.如果只是浅尝辄止,以后在遇到串口驱动与应用层程序调试难免遇到瓶颈.关于 tty驱动架构参见我的其他博客: ...
- Linux基础练习题(二)
Linux基础练习题(二) 1.复制/etc/skel目录为/home/tuer1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@www ~]# cp -r ...
- 2020-02-14 转载 开发应该知道的Linux系统分析-网络篇
开发应该知道的Linux系统分析-网络篇 原文地址:https://cloud.tencent.com/developer/article/1583803 常用网络工具有: 通过ping命令检测网络的 ...
- 你应该知道的linux命令 — lsof
在linux下有很多好用的命令,今天这里介绍lsof 命令 lsof命令是什么? 可以列出被进程所打开的文件的信息.被打开的文件可以是 1.普通的文件,2.目录 3.网络文件系统的文件,4.字符设备 ...
最新文章
- linux 命令自动提示错误信息,Linux基础命令---sar显示系统活动信息
- sql的执行顺序 (where、groupby、having等)
- 视频稳像(Video Stabilization)
- Google Gears 体验(2):本机 web 服务器
- led显示屏控制卡接线图解_Led显示屏出现花屏是什么原因
- 牛顿法python代码_python 牛顿法实现逻辑回归(Logistic Regression)
- 常识推理问答相关最新研究进展
- 现代投资组合理论python实现
- 什么是甘特图?怎么做甘特图?
- 论文笔记 NAACL 2016|Joint Event Extraction via Recurrent Neural Networks
- sku这样设置不仅降低退款投诉还可以提升转化
- 一些文字,纪念我远去的姑父
- 回归预测 | MATLAB实现MPR多元多项式回归
- 分布式事务解决方案和原理
- html5将文字生成图片
- BGP SOO 防环机制
- 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java攀枝花学院学生宿舍管理系统491bh
- linux全屏时钟应用下载,全屏时钟下载安装-全屏时钟app下载 苹果版v2.3-PC6苹果网...
- 浙江计算机学考的时候考是哪些,浙江高校招生职业技能考试大纲--计算机类
- 图新地球GIS+BIM工程设计施工管理平台