linux命令之chmod

2023-11-01

 chmod(英文全拼:change mode)命令是控制用户对文件的权限的命令

常见报错提醒:Permission denied.   

解决方法:chmod 777 lady.sh

原理详解:

首先,查看文件权限 命令: ls -l

若想设置文件权限,

基本语法:例如将lady.txt设置为所有人可写:  chmod a+w lady.txt

其中a为所有人,可替换为ugo,“+”代表增加权限,w代表可写,lady.tst

为文件名。

其它who(用户类型),operator(操作符)和 permission(权限)见下表

who 用户类型 说明
u user 文件所有者
g group 文件所有者所在组
o others 所有其他用户
a all 所有用户, 相当于 ugo
Operator 说明
+ 为指定的用户类型增加权限
- 去除指定用户类型的权限
= 设置指定用户权限的设置,即将用户类型的所有权限重新设置
模式 名字 说明
r 设置为可读权限
w 设置为可写权限
x 执行权限 设置为可执行权限
X 特殊执行权限 只有当文件为目录文件,或者其他类型的用户有可执行权限时,才将文件权限设置可执行
s setuid/gid 当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者setgid权限
t 粘贴位 设置粘贴位,只有超级用户可以设置该位,只有文件所有者u可以使用该位

八进制语法:将lady.sh设置为所有人可读可写可执行:chmod 777 lady.sh(通常情况下可解决所有问题)

第一个7代表所有者的权限用数字表达,第二个7代表用户组的权限用数字表达,第三个7代表其它用户的权限数字表达,lady.sh为文件名。

# 权限 rwx 二进制
7 读 + 写 + 执行 rwx 111
6 读 + 写 rw- 110
5 读 + 执行 r-x 101
4 只读 r-- 100
3 写 + 执行 -wx 011
2 只写 -w- 010
1 只执行 --x 001
0 --- 000
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux命令之chmod 的相关文章

  • 未找到 ffmpeg 命令,但 pip 列表显示 ffmpeg

    我一直在尝试使用命令安装 ffmpegpip install ffmpeg我正在没有 sudo 权限的服务器上执行此操作 在编写 ffmpeg 时 我得到 ffmpeg command not found 然后我检查了pip list它显示
  • 从哪个 Linux 内核/libc 版本开始,Java Runtime.exec() 在内存方面是安全的?

    在工作中 我们的目标平台之一是运行 Linux 的资源受限的迷你服务器 内核 2 6 13 基于旧 Fedora Core 的自定义发行版 该应用程序是用 Java Sun JDK 1 6 04 编写的 Linux OOM Killer 配
  • 监控(嗅探)由 FTDI USB 串行转换器创建的 /dev/ttyUSB0

    我想监视 嗅探 由 FTDI USB 串行转换器创建的 dev ttyUSB0 的流量 我已经在 Windows 中编写了自己的应用程序 现在我尝试将其移植到 Linux 并使用 dev tty USB0 我想调试实际发生的通信 软件 st
  • 为什么我不能将 Unix Nohup 与 Bash For 循环一起使用?

    例如 此行失败 nohup for i in mydir fasta do myscript sh i done gt output txt bash syntax error near unexpected token do 正确的做法是
  • WSL gprof 报告零次

    我正在尝试在 Windows 10 上的 WSL 中使用 gprof 我没有预料到会遇到任何困难 因为上次我在 Windows 7 上的 Ubuntu 虚拟盒中使用它时它工作得很好 与以前一样遵循来自https www thegeekstu
  • 如何将动态链接的应用程序转换为静态链接的应用程序?

    我有一个应用程序 例如 gedit 它是动态链接的 但我没有源代码 所以我不能按我喜欢的方式编译它 我想要做的是将其静态链接并将其移动到没有运行该应用程序所需的库的系统 那么是否可以做到以及如何做到呢 理论上是可能的 您基本上必须执行与动态
  • 如何在shell脚本中扩展相对路径

    我正在编写一个脚本来使用 bash 在 linux 2 6 上设置环境变量 因此该脚本包含如下命令 export SRC DIR export LIBPATH SRC DIR lib 问题是 当我尝试 echo LIBPATH 时 它显示
  • 错误:‘:’标记之前需要初始化程序

    我正在尝试编译一些 C 代码 可以在 Windows 上使用 Visual Studio 2012 进行编译 g 4 4 我有这段代码 const std string cnw restoreSession const std vector
  • 如何重新安装cudnn?

    安装Cudnn 4 0 4后 我发现如果我想运行我下载的代码 我需要更高版本的Cudnn 然后我下载 cudnn 7 0 linux x64 v4 0 prod tgz 并直接按以下顺序安装 sudo cp include cudnn h
  • Linux 上共享内存的生命周期是多长

    我正在使用 ftok shmget shmat shmdt 函数在 Linux 上创建 写入和读取共享段 如果我写入一个程序中的段 然后退出 然后稍后从另一个程序中读取该段 我会惊讶地发现数据仍然存在 我预计当共享一个段的最后一个进程执行
  • 很好的 C 库集合? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个很好的 ANSI C 库集合 用于处理向量 哈希映射 二进制树 字符串处理等 Try g
  • 移动除一个文件之外的所有文件

    如何移动除一个文件之外的所有文件 我正在寻找类似的东西 mv Linux Old Tux png Linux New 我将旧的东西移动到新的东西文件夹中 除了Tux png 符号代表否定 有一些工具可以完成这项工作吗 如果您使用 bash
  • 有人可以解释一下以下内存分配 C 程序的性能行为吗?

    在我的机器上 时间 A 和时间 B 交换取决于是否A是 定义或未定义 这会改变两个的顺序 callocs 被称为 我最初将此归因于寻呼系统 奇怪的是 当mmap被用来代替calloc 情况更加奇怪 两个循环花费的时间相同 正如预期的那样 作
  • Visual Studio 代码中的“Git:gpg 未能签署数据”

    全新安装 Linux 后 我尝试设置我的环境 并且不断收到Git gpg failed to sign the data在本地提交更改时出错 我使用的是 Visual Studio Code 专有版本 而不是开源版本 gitconfig u
  • Cmake 错误未定义对“pthread_create”的引用

    我对 cmake FindThreads 进行了测试 这是我的源代码test cpp和CMakeLists txt include
  • 我应该如何从非 root Debian Linux 守护进程登录?

    我正在编写一个新的守护进程 它将托管在 Debian Linux 上 我发现 var log 具有仅 root 写入权限 因此我的守护进程无法在那里写入日志文件 但是 如果它写入那里 它似乎将获得自动日志轮转 并且也按照用户期望的方式工作
  • 使用 Python for Linux 模拟按键事件

    我正在编写一个脚本来自动运行特定模型 当模型失败时 它会等待用户输入 Enter 键 我可以检测到模型何时失败 但我无法使用 python 在 Linux 上 来模拟按键事件 Windows 有 SendKeys 库来执行此操作 但我想知道
  • 32 位 x86 汇编中堆栈对齐的职责

    我试图清楚地了解谁 调用者或被调用者 负责堆栈对齐 64 位汇编的情况相当清楚 它是由caller 请参阅系统 V AMD64 ABI 第 3 2 2 节栈帧 输入参数区域的末尾应按 16 对齐 32 如果 m256 在堆栈 字节边界上传递
  • 如何在不需要设置 LD_LIBRARY_PATH shell 变量的情况下输入“cargo run”?

    我构建了一个 Rust 程序 通过 C 接口调用 C 函数 为了执行该程序 我必须运行 export LD LIBRARY PATH
  • 生成(非常)大的非重复整数序列而不进行预洗牌

    背景 我编写了一个简单的媒体客户端 服务器 我想生成一个不明显的时间值 随从客户端到服务器的每个命令一起发送 时间戳中将包含相当多的数据 纳秒分辨率 即使它不是真正准确 因为现代操作系统中计时器采样的限制 等 我想做的 在 Linux 上

随机推荐

  • java web考试题及答案_2016JAVA-WEB期末复习题库附答案.doc

    1 当访问一个Servlet时 以下Servlet中的哪个方法先被执行 D A destroy B doGet C service D init0 2 假设在myServlet应用中有一个MyServlet类 在web xml文件中对其进行
  • 【leetcode】求两个链表的交点

    求两个链表的交点 c 借助set Definition for singly linked list struct ListNode int val ListNode next ListNode int x val x next NULL
  • 静态时序分析-Multicycle约束

    有时 前端在一些关键路径上的设计 可能会出现两个时钟周期驱动和采样一拍数据 来放松关键路径上的时序 这样的设计在STA约束过程中 如果不放松 会导致Timing违例过大 无法收敛 此时的Timing由前端逻辑实现保证 STA约束即可释放 以
  • 关于VScode引用头文件时一直报错的解决方法

    一 首先看下配置文件 常见的错误原因可能是因为 c cpp properties json 这个文件并没有配置好 可以参考下列的文件 在这里插入代 configurations name Win32 includePath workspac
  • iOS开发之数据存取(三)——FMDB

    FMDB 基本使用 相比于SQLite3来说Core Data存在着诸多优势 它面向对象 开发人员不必过多的关心更多数据库操作知识 同时它基于ObjC操作 书写更加优雅等 但是它本身也存在着一定的限制 例如如果考虑到跨平台 则只能选择SQL
  • AT24C02芯片介绍

    AT24C02管脚介绍 AT24C02低功耗CMOS串行EEPROM 它是内含256 8位存储空间 具有工作电压宽 2 5 5 5V 擦写次数多 大于10000次 写入速度快 小于10ms 等特点 AT24C02的1 2 3脚是三条地址线
  • 如何使用idea来查找所有未使用的代码?

    一 目的 通过idea快速找到项目中没有被使用的代码 二 操作步骤 2 1 Code gt Analyze Code gt Run Inspection by Name 2 2 输入Unused declaration gt 查询没有被使用
  • HTTP Status 500 - Request processing failed; nested exception is java.lang.NullPointerException type

    个人错误记录 本人目前水平不够 所以不喜勿喷 谢谢 我的错误原因 在SSM中 使用set注入的方式注入对象导致 源码 lt Controller RequestMapping role public class RoleController
  • write和fwrite

    如果只是普通地以O RDWR的flag去open一个文件朝里write 不考虑创建 扩增 那默认内核会把文件的这个页面读进来缓存在内核里的 也即所谓的page cache 随后再发起新的write syscall写相同的页面时 只要写在pa
  • vue3中将表格导出成excel文件

    yarn add xlsx yarn add file saver 通过调用exportData方法 excel 文件 传递数据和文件名 function exportToExcel tableData filename 1 JSON 数据
  • 【FPGA】SPI协议

    1 SPI简介 SPI Serial Perripheral Interface 串行外围设备接口 是 Motorola 公司推出的一种同步串行接口技术 SPI 总线在物理上是通过接在外围设备微控制器 PICmicro 上面的微处理控制单元
  • 掌优电子为商家提供合理的移动支付解决方案

    目前官方正式对外的是微信的青蛙 和支付宝的蜻蜓 而市面上众多的刷脸支付设备 更多的是作为系统商联系对应的厂商进行生产 并非官方授权 其背后的安全性是值得考究的 从客观角度去讲的话 官方的设备 就算贵 但正规 安全 且用的放心 刷脸支付的问世
  • vue项目中实现文字滚动(跑马灯)效果——公告滚动播放

    项目需求 系统公告 要从右忘左循环播放的牛皮广告效果 实现 方案一 使用定时器和CSS3的过渡属性来实现
  • gitea无法连接mysql_Git push ERROR: Repository not found fatal:无法连接远程数据库

    用linux Debian git 上传到github 遇到的问题以及解决方案 git init git add bubble go git add bubble test go git commit m git remote add or
  • Python自学心得分享

    学习python 我首先根据自己完全代码零基础的情况下 为什么学习Python作为核心问题 进行了一个自我定位以及目标定位 我认为只要有一个目标 那么就找方法去打成目标就行了 我是完全零基础 选择学习Python主要还是因为看到大家都说Py
  • Struts2 validation.xml 正则表达式不起作用

  • Python操作Excel教程(图文教程,超详细)Python xlwings模块详解,

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 推荐专栏 小白零基础 Python入门到精通 xlwings模块详解 1 快速入门 1 打开Excel 2 创建工作簿 2 1
  • MyBatis如何实现多表联查

    一 通过映射配置文件实现多表联查 首先 使用Mysql数据库 创建两个表 分别为学生表Student表和班级表Class表 在Student表中添加列classid参照主表的列id的外键约束 学生表Student表 班级表Class表 现在
  • (三)工作流Activiti7-个人任务查询及完成

    前言 在 上篇文章中我们已经完成了流程的定义和部署 通过repositoryService部署并启动流程后就已经开始给每个负责人分配任务了 比如下图 assignee可以写死但一般都是通过变量来设置任务负责人的 在启动一个流程实例的时候就可
  • linux命令之chmod

    chmod 英文全拼 change mode 命令是控制用户对文件的权限的命令 常见报错提醒 Permission denied 解决方法 chmod 777 lady sh 原理详解 首先 查看文件权限 命令 ls l 若想设置文件权限