AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[filenames](unix)

Martin Hope
jsx97
Asked: 2025-03-14 23:58:59 +0800 CST

使用不同的编码将文件名弄乱后恢复

  • 11

我有一个文件

СМП бваг™вга†

前三个字母是正确的西尔字母,其余部分是莫吉巴克字母。

“ Mojibake是使用非预期的字符编码对文本进行解码而产生的乱码或胡言乱语的文本。” — 维基百科

最初是

СМП структура

但后来不知怎么的就变成了乱码,很可能是因为该文件是由一个不熟练的用户在 Windows XP 上压缩的,然后在 Mac 上解压的。

convmv我尝试使用和修复它iconv,如下所示:

convmv -r -f cp1251 -t utf-8 DIR
ls | iconv -f cp1251 -t cp850 | iconv -f cp866

但尚未成功。有人能帮忙吗?

更新 1

十六进制转储СМП бваг™вга†:

0000000    d0  a1  d0  9c  d0  9f  20  d0  b1  d0  b2  d0  b0  d0  b3  e2
           С   **  М   **  П   **      б   **  в  **   а  **   г   **  ™
0000020    84  a2  d0  b2  d0  b3  d0  b0  e2  80  a0  0a                
           **  **  в  **   г  **   а   **  †   **  **  \n                
0000034

十六进制转储СМП структура:

0000000    d0  a1  d0  9c  d0  9f  20  d1  81  d1  82  d1  80  d1  83  d0
           С   **  М   **  П   **      с  **   т  **   р  **   у  **   к
0000020    ba  d1  82  d1  83  d1  80  d0  b0  0a                        
           **  т   **  у   **  р   **  а   **  \n                        
0000032
filenames
  • 1 个回答
  • 264 Views
Martin Hope
Mikhail Ramendik
Asked: 2024-10-08 23:21:33 +0800 CST

处理名称以“-”开头的文件(本例中为解压缩)

  • 5

我在 VPS 上运行 Debian bullseye。

我想批量检查从网站自动下载的大量 zip 文件的完整性。不幸的是,其中一些文件的名称以 开头-,例如-example-file.zip。

当我执行unzip -t -example-file.zip或 时unzip -t "-example-file.zip",unzip 将文件名视为选项,并且不会真正尝试处理此文件。其他命令也会发生同样的情况(尝试过touch)。

除了使用非 Shell 语言的批量重命名脚本之外,我还能如何处理此类文件?

filenames
  • 2 个回答
  • 26 Views
Martin Hope
Jesse
Asked: 2024-03-14 04:57:24 +0800 CST

命令的“绝对路径”的价值、正确使用和行为是什么?

  • 3

我们有很多涉及绝对路径的问题,有时针对文件,有时针对命令。我想要一个中心知识库问题,了解绝对路径 与命令(不仅仅是文件)相关时到底做什么。

命令的绝对路径可以实现什么以及它如何影响 Unix 和 Linux 中的工作?

  • 绝对路径与相对路径的行为有何不同?
  • 绝对路径是否会覆盖环境$PATH设置?
  • 命令替换中是否发生任何其他情况:$(/bin/echo Hello world)
  • 绝对路径在脚本编写中更好吗?
  • 为什么有时一个命令 有很多绝对路径?
    • /usr/bin/echo
    • /bin/echo
    • 两者都在同一系统上工作
    • 是跨发行版更一致还是 POSIX 首选?
  • 为什么有些命令(例如)cd没有绝对路径?
  • 为什么我们会或不会或应该在脚本编写中使用绝对路径?
    • 绝对路径与脚本编写相关
  • shell 解释器是否关心绝对路径,例如bashvs zsh?

消歧义

  • 这询问任何给定的命令:
    • 绝对路径( /usr/bin/echo)
    • 与其相对路径( echo)相反
  • 我不是在询问规范路径,因为它们与符号链接相关。
  • 我不是问绝对路径、相对路径、规范路径或其基本定义(即:带斜杠的 POSIX 文件名/指示目录树等)
filenames
  • 1 个回答
  • 71 Views
Martin Hope
Ken Taylor
Asked: 2023-05-13 02:28:54 +0800 CST

对文件名列表进行排序,使子目录中的文件在父目录中的文件之前列出

  • 7

我有一个包含文件列表的文本文件,例如:

file
A1/file
A1/B1/file
A2/file

如何对其进行排序,使子目录中的文件在父目录中的其他文件之前列出?

A1/B1/file
A1/file
A2/file
file
filenames
  • 3 个回答
  • 85 Views
Martin Hope
MLu
Asked: 2022-10-03 12:54:56 +0800 CST

如何在 UTF-8 系统上查找(和重命名)具有无效字符(Latin1)的文件?

  • 3

我从基于 Latin1 的系统中获得了一些旧文件,这些文件的名称在我的 UTF-8 系统上无效。它们显示为各种代码或问号。例如:

/tmp/test $ ls -1
'FRg_Pause lecture_'$'\371''.png'
'FRg_Pause lecture_'$'\353''.png'
'FRg_Pause lecture_'$'\350''.png'
'FRg_Pause lecture_'$'\374''.png'

/tmp/test $ find .
./FRg_Pause lecture_?.png
./FRg_Pause lecture_?.png
./FRg_Pause lecture_?.png
./FRg_Pause lecture_?.png

/tmp/test $ tar cvfz test.tar.gz *.png
FRg_Pause lecture_\351.png
FRg_Pause lecture_\352.png
FRg_Pause lecture_\340.png
FRg_Pause lecture_\374.png

我想重命名它们,最好是正确的 UTF-8 名称。例如:

FRg_Pause lecture_\340.png -> FRg_Pause lecture_à.png

但即使将它们重命名为,我也不知道,“FRg_Pause Lecture_340.png”也可以。只要新名称是有效的 UTF-8 并且我们的工具停止抱怨。

然而,一个复杂的问题是有许多文件具有正确的 UTF-8 名称,所以我不能只是将操作系统切换到 Latin1 并完成它。我需要找到不是 UTF-8 的文件(并且在许多目录中有很多)并对它们做一些事情。

有任何想法吗?首先,我发现甚至很难找到文件。

bash filenames
  • 1 个回答
  • 31 Views
Martin Hope
DefenestrationDay
Asked: 2022-05-21 04:05:12 +0800 CST

删除一个名为 '.env'$'\r' 的文件

  • 16

我不知道是什么创建了这个文件——我猜是一个糟糕的 shell 脚本。

它被称为'.env'$'\r'

我已经尝试过各种版本的rm,以及使用 打开目录vim ./、选择文件和 Shift-D 删除的技术。
这没有用,失败了

**warning** (netrw) delete(/root/squawker/.env) failed!
NetrwMessage [RO]
"NetrwMessage"  --No lines in buffer--

如何删除这个讨厌的文件?

这是在 Ubuntu 20.04 上

filenames rm
  • 4 个回答
  • 2526 Views
Martin Hope
user17273899
Asked: 2022-04-18 20:41:42 +0800 CST

如何重命名两个具有相同名称的子目录中的文件?

  • -1

我有两个子目录,s1and s2,每个子目录中都有名为file_1andfile_2的文件。如何将这些文件的名称更改为, 和, s1_file1,以便我们知道它们代表什么?s1_file2s2_file1s2_file2

linux filenames
  • 2 个回答
  • 101 Views
Martin Hope
Paolo Lorenzini
Asked: 2022-03-08 00:59:58 +0800 CST

在中间打印部分文件名

  • 0

我有几个文件的名称为:

ID_Italy.txt
ID2_USA.txt
ID3_Germany.txt
.....

如果我想在 _ 之前打印,我可以:

for file in *.txt; do print "${file%_*}";done

输出:

ID
ID2
ID3

如果我想打印并删除扩展名:

for file in *.txt; do print "${file%.*}";done

输出:

ID_Italy
ID2_USA
ID3_Germany

但是,我只想取介于 _ 和 . 并具有以下输出:

Italy
USA
Germany

那怎么打印?

filenames
  • 5 个回答
  • 134 Views
Martin Hope
Mehdi Benabdessalem
Asked: 2022-02-09 12:47:48 +0800 CST

如何在不显示“/”的情况下查找文件

  • -1

我是初学者,我不知道脚本 shell Linux 的语法。

我必须只显示已经完成的以 (.sh) 结尾的文件。

但是当我使用 cut 时,这些以 (.sh) 结尾的文件的名称必须不显示“.sh”和“./”

我拿走了两点之间的一切

示例:./hello.sh

输出:/你好

所以斜线仍然存在,我没有找到任何解决方案 示例

filenames
  • 2 个回答
  • 301 Views
Martin Hope
DAB
Asked: 2021-12-30 10:47:42 +0800 CST

以十六进制查看文件名?

  • 5

我有一些带有特殊字符的文件,例如重音字母。

它们是有效的名称,但由于某种原因,当它们通过网络复制到驱动器时​​,可能是另一种格式,名称看起来仍然相同,但并不相同。

我可以将文件复制回来,现在我有两个文件在完全相同的路径中似乎具有完全相同的名称。

我的猜测是有两个不同的值表示重音字母,因此它们看起来相同。有没有办法查看名称本身的十六进制,而不是文件?

这很重要,因为我的一个同步应用程序变得混乱并创建了重复项。

debian filenames
  • 1 个回答
  • 539 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve