首页 > 系统相关 >linux相关

linux相关

时间:2023-05-16 11:45:09浏览次数:32  
标签:文件 -- 命令 linux 相关 docker 权限 目录

目录结构
这里是先规划好不同的功能模块,程序按这个结构,分散放进去。
window也有这方面,但基本是按盘符,然后都放在自己的目录为主。
这里好像是磁盘先分区。然后挂载上来一个设备符号,再设置目录放在哪个分区设备?

usr是Unix System Resource 不是User的简写
/usr/bin 系统预装的可执行程序
/usr/local/bin 用户自己的可执行程序

etc--配置文件
系统程序,安装的程序,配置一般都放这儿,
如crontab,mysql,nginx

var--经常被修改的文件
www--nginx默认网站目录
log --程序的日志,

home--用户根目录
user1--某个用户的目录,一般自己弄的程序就放在这儿?

/proc--它是系统内存的映射
/lib-基本的动态连接共享库

目录颜色
蓝色-目录;绿色-可执行文件;红色-压缩文件或包文件;浅蓝色-链接文件;灰色-其它文件;红色闪烁-链接的文件有问题了;黄色-设备文件

系统配置
系统级的有好几个文件,
用户级的.bashrc,profile。云服务器上没有。
修改了用sourse xx来加载、crontab里有些也需要这样?

 

系统权限

到处都会遇到权限限制,除非直接root用户。
文件权限

分为3种用户,3种权限,用九位来显示 xxx xxx xxx

 

三种用户--所属用户,所属群组,其他用户
三位权限--r-可读,w-可写,x-可执行,转化为数字: r=4,w=2,x=1

用户默认会有个权限模板
会是4位数字,第一位不用管。
默认root用户是0022,普通用户0002
这里的换算关系
文件(或目录)的初始权限 = 文件(或目录)的最大默认权限 - umask权限
文件的最大默认权限是 666,换算成字母就是 "-rw-rw-rw-",umask 的值是 022,换算成字母为 "-----w--w-"。把两个字母权限相减,得到 (-rw-rw-rw-) - (-----w--w-) = (-rw-r--r--)
目录的默认权限最大可以是 777
通过umask命令来查看和编辑

 

shell命令

w -当前的登录用户。
目录/文件操作
定位操作

  pwd--当前目录
  ls 后面也可以加指定的目录
     -l  详细
     -a  包含隐藏
  cd 
      '/'   根目录。/home
      ..    上层目录
      -     回到上一个目录
      ~    当前用户的目录

  which 只在PATH里查可执行文件。
  whereis 只查找可执行文件,目录名称等,在一个索引库中查找。
  find / -name nginx.conf  实际硬盘查找  
  路径  /-根目录。  .--当前目录   /sdcard/  -指定目录
   

然后 / 本来理解是全局的,但在android 中,并不搜索sdcard中的内容。其它有没漏掉未知。

维护操作

mkdir [-p] dirName    
    -p 目录是多层的话,每个都建起来  
mv  
cp

关联
ln  ln [参数][源文件或目录][目标文件或目录]
  类似于windows快捷链接。  在android文件系统里看到过很多文件夹都是链接形式的。
  ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
rm xx 
  rm -rf file/  目录
  rm -rf * 当前文件夹下所有

查看/修改/过滤

cat  xx  
  -n  显示行数
head -n 10 前几行  
tail -n 10 从尾部算起几行
     -f 循环读取最后几行
grep xx 
    -v 不包含匹配文本     
也可以通过管道过滤处理
   |head 
   |tail 
   |grep 'xx' 查找包含字符的。

sed  功能很强
插入,删除,修改,替换。
替换
   sed 's/222/aaa/g' sedfile  

系统操作

ps  -e 所有用户进程
    -f 全格式显示进程
free -mh 系统内存
df -h    磁盘文件

netstat -tunlp  网络端口
  如果连接的是docker里面的服务,显示不出来相应的客户端ip
  要到docker里面用这个命令才会显示。?

符号

|  管道  
>  重定向  
$ 后面是处理后的值  
  cd $(ls|grep xx)  
& 把任务放后台执行

unzip xxx -d directoryname --建一个文件夹解压

技巧
tab键-自动补齐参数,有多个选项会列出来,单一选项就直接补齐。简直是灵魂所在。

如 cd 目录名参数
cd 后按tab 会出来下面的子目录列表,然后输首字母,直接补齐。

! 执行最后的一条XX关键词命令

如 ! docker, 后面还可以再加参数到这个命令下

ctrl+r--匹配历史命令。
history--列出历史输入命令

ctrl+u--删除开头到光标处的内容。

复制黏贴
ctrl + insert
shift + insert
标选中后右键,直接黏贴到当前处。也能正常黏贴命令到Windows。

窗口输出
程序在运行后,都会至少打开三个文件描述符,分别是0:标准输入;1:标准输出;2:标准错误。
大致理解1,2都是会输出到终端显示上。

在find时遇到“Permission denied”,输出一大堆这类错误信息,grep也过滤不掉。
管道 | 只是把 1 给接上去。 2 不受影响。
find / -name art 2>&1 | grep -v " denied"
2>&1 这是把2重定向至1。。
find / -name art 2>/dev/null
2> /dev/null 这是把2丢弃掉

 

脚本/bash
变量
申明--直接用就行,没有类型?
赋值--返回值- "$(x)",没有双引号也行,不知道有啥区别

x如date +%H:%M:%S; cat date.txt

开头都要写 --#!/bin/bash
表示执行下面脚本的程序所在。
这里大概脚本可以有由不同程序来执行,用python都行?
不写的话是用默认的脚本执行器,可能有问题
还可以执行脚本的时候传入变量。。

做好后要用chmod +x 赋予执行属性,
执行脚本
./name 前面要加前缀,不加的话系统是去PATH里面找命令,不会在当前文件夹下。

 

文本vim/vi编辑

完全不一样的编辑方式。光用键盘就能完成这么多操作。。

有几种工作模式。

命令模式 - 初始模式,输入字母,这时候会被识别成命令。
底线命令模式 -输入“:”,可以在底线输入命令
编辑模式 - 按i进去,按ESC退出

命令模式

复制--源行-yy,目标行-p
删除--整行-dd
查找字符-- /xxx, 会跳到字符处,然后回车,再按n下一个。

底线命令

保存退出。-wq
退出不保存-q!

编辑的文件要有权,否则保存不了。可以加sudo切换到root权限

 

制作服务
手动部署docker时用到的.其它程序要做成服务也都是这个步骤。
先写好文件放到/usr/lib/systemd/system/docker.service
systemctl daemon-reload --文件有变动就要先执行这条
systemctl start docker--不知道为啥出错了。这个是启动命令,然后docker已经手动开启了?
systemctl enable docker.service --这才是真的自启动?

systemctl list-unit-files --列出所有服务
systemctl list-unit-files | grep enabled --自己加的一般在这

ssh远程

ssh是一种协议,有多种客户端软件。
Putty,SecureCRT,XShell
SecureCRT--要破解,可以开多个tab连多台主机,管理员用。
Putty--开源,小巧。虽然是单窗口,但可以开多个程序。一般都用这个。
XShell--说还可以。
MobaXterm--图形界面,看着支持的协议很丰富

 

 

 

 

 

标签:文件,--,命令,linux,相关,docker,权限,目录
From: https://www.cnblogs.com/halfwake/p/17404470.html

相关文章

  • springboot 整合webservice 相关说明
    1.环境依赖jdk8,springboot2.3.12.release,cxf版本需要根据springboot版本修改,方法:查看springboot版本的发布日期,然后根据日期找相近的两个版本<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><versi......
  • Linux-特殊权限设置(SUID、SGID、SBIT)
    一、SUID权限1.概念当s这个标志出现在文件所有者的x权限上时,例如文件权限状态“-rwsr-xr-x”,此时就被称为SetUID,简称SUID。如果该属主权限位上有执行权限,则会显示(小写)s。如果该属主权限位上没有执行权限,则会显示(大写)S。说明:SUID权限中的s有大小写之分,如果强行给普通文件添加s......
  • 【AGC】接入分发和运营分析相关问题
     【关键字】AGC、分发分析、运营分析 【问题描述】开发者反馈在应用中接入AGC分发分析、运营分析、事件分析时遇到了一些问题。具体如下所述:1、事件分析里面的埋点事件参数和参数值是否有数量限制。2、埋点统计是否是收费项目,是的话是否有免费额度。3、分析服务中是否有a......
  • 【转】Linux下判断cpu架构及系统发行版方法
    原文地址:https://zhuanlan.zhihu.com/p/374738476一、判断cpu架构1,使用命令:hostnamectl2,使用命令:arch3,使用lscpu4,使用命令:cat/proc/cpuinfo,可以查到具体指令集二、判断系统是Debian系还是Redhat系大家都知道linux分redhat系和debian系,那么肯定有办法,去判断系统是r......
  • Linux 文件上传下载的几种方式
    虚拟终端软件中的rz和sz我们使用虚拟终端软件,如Xshell、SecureCRT或PuTTY来连接远程服务器后,可以使用rz或sz来上传下载文件rz命令使用rz命令可以上传本地文件到远程服务器。运行该命令会弹出一个文件选择窗口,从本地选择文件上传到Linux服务器sz命令将选定的......
  • Linux & Window: idea配置php+xdebug
    xdebugproblemusingidekey[url]http://devnet.jetbrains.com/message/5265653[/url]NetBeans结合xdebug调试php-fpm下的PHP代码[url]http://www.48474.com/netbeans%E7%BB%93%E5%90%88xdebug%E8%B0%83%E8%AF%95php-fpm%E4%B8%8B%E7%9A%84php%E4%BB%A3%......
  • R语言股市可视化相关矩阵:最小生成树|附代码数据
    原文链接:http://tecdat.cn/?p=17835最近我们被客户要求撰写关于股市可视化的研究报告,包括一些图形和统计输出。本文在股市可视化中可视化相关矩阵 :最小生成树在本文示例中,我将使用日数据和1分钟数据来可视化股票数据。我发现以下概念定义非常有用: 连通图:在无向图中,若任......
  • Linux操作系统分析-课程总结
     结合虚拟化技术分析Linux系统的一般执行过程一、     Linux系统运行一般场景:用户进程之间切换                     (1)用户态进程X调用系统调用或触发异常用户态进程X需要进行进程切换时,可以通过调用一些特定的系统调用(例如fork、exec等)或者......
  • linux工具学习 day03
    1、gdb命令run:在调试器中运行程序list:查看程序源码break+行号:设置断点break+行号+if条件:设置断点break+函数名:设置断点infobreak:查看断点信息delete+断点编号:删除断点enable/disable:使能断点print+X+变量名:查看变量值next:单步执行,不进入子函数(跳过函数,直接拿结果)ste......
  • Cookie相关
    (1)https://www.cnblogs.com/wenjia-hao/p/7365569.html(2)https://www.cnblogs.com/fish-li/archive/2011/07/03/2096903.html(3)https://www.cnblogs.com/zhangziqiu/archive/2009/08/06/cookies-javascript-aspnet.html#!comments(4)https://www.cnblogs.com/fish-li/ar......