Linux基础知识整理

设置共享文件夹:

sudo mount -t vboxsf 共享文件夹名称(在设置页面设置的) 挂载的目录

 

 

apt : 安装包管理工具 (advanced packaging tool)

 

1.安装软件 sudo apt install + name 

2.卸载软件 sudo apt remove + name

3.显示可更新软件名 : sudo apt update

4.升级已安装软件包 : sudo apt upgrade

 

deb是debian linux的安装格式: sudo dpkg -i <package.deb>

sudo apt -f install 处理安装包之间的依赖关系

 

anaconda的安装格式:bash Anaconda3-4.3.1-Linux-x86.sh

更改默认python版本:

 

ctrl+shift+ + 放大字体

ctrl+ - 缩小字体

 

pwd查看当前文件夹

ls查看当前文件夹中内容

touch[文件名] 如果文件不存在,新建文件

mkdir 创建目录 -p 创建递归目录

rm 删除指定文件(-r强制删除,排除不存在的命令,-f递归删除)

rm -rf 删除指定文件夹下所有文件

 

command --help 显示command命令的帮助信息

man command 显示详细的命令手册信息(空格翻页,回车显示下一行,b返回上一页, q退出)

 

创建隐藏文件,则以.开头

利用ls显示隐藏文件,用-a,用-l详细显示信息,再加上-h 使得文件大小显示更加直观

. 表示当前所在目录

.. 表示上一级目录

ls通配符的使用:*代表任意多字符,?代表1个字符,[abc]匹配abc中的任意一个,[1-4]匹配从1-4中的任意一个

/根目录,~家目录

tree 以树状图列出目录结构

 

cat 查看文件内容 -n对行进行编号 -b对非空行编号

more 分屏查看文件内容

grep 查看文件中的指定文本,^a查找以a开头的行,ke$搜寻以ke结束的行

 

echo 一般和重定向一起使用,echo ' ' >a 输出引号中内容并覆盖文件a原有内容,echo>>输出并覆盖

重定向>和>>也可以直接将程序运行结果重定向

 

管道 | 将命令的输出作为另一个命令的输入,例如: ls -lh | more

 

远程管理:

shutdown 选项 时间(-r 重新启动)now 表示现在

网卡:专门负责网络通讯的硬件设备

ifconfig 查看网卡配置信息

ping ip地址 检测到目标ip地址的连接是否正常(本地回环地址127.0.0.1)

SSH服务器默认端口22

ssh [-p port] user@remote SSH客户端的使用

scp 远程拷贝文件,地址格式与ssh基本相同,但-P是大写:

scp -P port 1.py user@remote:Desktop/01.py (加上-r 可以复制文件夹)

 

SSH高级(和SSH配置相关的信息都保存在.ssh文件中)

1.免密码登录

先配置公钥(ssh-keygen),上传公钥到服务器(ssh-copy-id -p port user@remote)

2.配置别名

在.ssh/config里面追加内容(设置主机,IP地址,用户,端口)

Host:myserver

HostName 172.168.1.1

User wangjx

Port 22

 

关于权限: -r 可读 -w 可写 -x 可执行

使用ls-h显示详细信息,

第一组意义为: 创建该文件的用户权限/用户所在组的权限/其它用户的权限

数字表示 硬链接数:就是有多少种方式能访问到该文件

 

chmod修改用户权限: chmod +/-(rwx) 文件名/目录名

要想执行文件,加上 ./文件

组管理:组信息放在etc/group中

groupadd 组名 添加组

groupdel 组名 删除组

 

修改文件/目录的所属组 chgrp -R 文件名/目录名

 

 

用户管理命令

1.创建用户/设置密码/ 删除用户

useradd -m -g 组 (-m 自动创建家目录 , -g 指定组,新建用户名)

passwd 用户名 (设置用户密码)

userdel -r 用户名 删除用户家目录

2.查看用户信息

id 用户名 (查看用户id和组信息)

who 查看当前登录的所有用户列表

whoami 查看当前登录用户的账户名

 

usermod 用于设置用户的主组/附加组和登录shell

-G修改用户的附加组,-g修改用户主组

修改用户登录 shell(shell 有bash和dash,默认登录远程是dash,这种不显示颜色) : sudo usermod -s /bin/bash 用户名

 

which 查看执行命令所在位置

su - 用户名 切换当前用户

 

4.修改文件权限

1.chown修改拥有者

2.chgmod修改权限 : chgmod -R 755 文件名| 目录名 (最常用命令格式,755表示拥有者/组/其它用户的权限,-R表示目录下所有文件)

3.chgrp 修改组

 

date查询系统时间

cal查看当前月的日历,加上-y 查看一年的日历

df -h 显示磁盘剩余空间(disk free)

du -h [目录名] disk usage 显示目录下的大小

 

进程:当前正在执行中的程序

ps aux : process status 查看进程的详细状况

a: 显示终端上所有进程

u: 显示进程上详细状况

x: 显示没有控制终端的进程

 

top:动态显示运行中的进程并排序

kill [-9] 进程代号PID: 杀死进程,[-9]为强制杀死

find 查找文件: find [路径] -name "*1*.py"

ln -s 被链接的源文件 链接文件 (建立文件的软链接,类似于快捷方式)(必须使用绝对路径)

ln 会创建一个硬链接 (删除源文件后,硬链接文件并不会受到影响)

 

linux中,文件名和文件数据是分开存储的,硬链接就是另一个文件名

Mac 常用zip, windows 用rar, linux 用tar.gz

tar 打包命令(不负责压缩) tar -cvf 打包文件名.tar 被打包的文件/路径

tar -xvf 解包文件

 

压缩/解压缩

(1) gzip

tar -zcvf 打包文件.tar.gz 被压缩的文件/路径

tar -zxvf 解压缩文件.tar.gz .................(-C解压缩到指定目录)

(2)bzip2

tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径

tar -jxvf 解压缩文件.tar.bz2 .................(-C解压缩到指定目录)

 

字符串方法:

1. center

>>> "The Middle by Jimmy Eat World".center(39)

' The Middle by Jimmy Eat World '

2.词首大写

另一种方法是使用模块string中的函数capwords。

>>> import string

>>> string.capwords("that's all, folks")

That's All, Folks

3.replace

>>> 'This is a test'.replace('is', 'eez')

'Theez eez a test'

4.split是一个非常重要的字符串方法,其作用与join相反,用于将字符串拆分为序列。

>>> '1+2+3+4+5'.split('+')

['1', '2', '3', '4', '5']

>>> '/usr/bin/env'.split('/')

['', 'usr', 'bin', 'env']

>>> 'Using the default'.split()

['Using', 'the', 'default']

5.strip() 去掉字符串开头和结尾的空白

6.isalnum() 判断是否为数字;isalpha()

使用format_map来指出你将通过一个映射来提供所需的信息

>>> phonebook

{'Beth': '9102', 'Alice': '2341', 'Cecil': '3258'}

>>> "Cecil's phone number is {Cecil}.".format_map(phonebook)

"Cecil's phone number is 3258."

 

深复制,即同时复制值及其包含的所有值

>>> x={'a':'A','B':['1','2']}

>>> from copy import deepcopy

>>> y=deepcopy(x)

>>> y['B'].remove('1')

>>> x

{'a': 'A', 'B': ['1','2']}

浅复制:

>>> x={'a':'A','B':['1','2']}

>>> from copy import deepcopy

>>> y=copy(x)

>>> y['B'].remove('1')

>>> x

{'a': 'A', 'B': ['2']}

 

4. get

方法get为访问字典项提供了宽松的环境。通常,如果你试图访问字典中没有的项,将引发错误。

>>> d = {}

>>> print(d['name'])

Traceback (most recent call last):

File "<stdin>", line 1, in ?

KeyError: 'name'

而使用get不会这样:

>>> print(d.get('name'))

None

5.方法items返回一个包含所有字典项的列表,其中每个元素都为(key, value)的形式。

6.setdefault()指定的键不存在时,setdefault返回指定的值并相应地更新字典。如果指定的键

存在,就返回其值,并保持字典不变

7.方法update使用一个字典中的项来更新另一个字典,向一个字典中添加新的字典键值

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值