无法安装Linux';s重命名为Mac

无法安装Linux';s重命名为Mac,linux,macos,rename,Linux,Macos,Rename,我阅读了建议我在util-linux包上运行的 ./configure 我明白了 configuring util-linux-2.12q You don't have <scsi/scsi.h> You don't have <linux/blkpg.h> You don't have <linux/kd.h> You have <locale.h>You have <langinfo.h> You have <sys/us

我阅读了建议我在util-linux包上运行的

./configure
我明白了

configuring util-linux-2.12q

You don't have <scsi/scsi.h>
You don't have <linux/blkpg.h>
You don't have <linux/kd.h>
You have <locale.h>You have <langinfo.h>
You have <sys/user.h>
You have <uuid/uuid.h>
You have <rpcsvc/nfs_prot.h>
You don't have <asm/types.h>
You don't have <linux/raw.h>
You have <stdint.h>
You don't have <sys/io.h>
You have inet_aton()
You have fsync()
You have getdomainname()
You have nanosleep()
You don't have personality()
You don't have updwtmp()
You have fseeko()
You have lchown()
You don't have rpmatch()
You have <term.h>
You have ncurses. Using <ncurses.h>.
You have termcap
You don't need -lcrypt
Strange... Static compilation fails here.
You don't have native language support
You have __progname
You don't have <pty.h> and openpty()
You have wide character support
You don't have SYS_pivot_root
You have a tm_gmtoff field in struct tm
Your rpcgen output does not compile - using pregenerated code
You have zlib
You don't have blkid
我得到以下警告

cc -pipe -O2 -mtune=i386 -fomit-frame-pointer -I../lib -Wall -Wmissing-prototypes -Wstrict-prototypes -DNCH=1   -D_FILE_OFFSET_BITS=64 -DSBINDIR=\"/sbin\" -DUSRSBINDIR=\"/usr/sbin\" -DLOGDIR=\"/var/log\" -DVARPATH=\"/var\" -DLOCALEDIR=\"/usr/share/locale\" -O2  -s  rename.c   -o rename
ld warning: option -s is obsolete and being ignored

如何为Mac安装rename-command?

您能否不使用
mv
而尝试编译
rename
?甚至可以将其别名为“重命名”


(编辑:忽略我关于build essentials的评论-,不管怎样它看起来应该已经构建好了)

你能不能不使用
mv
而尝试编译
重命名
?甚至可以将其别名为“重命名”


(编辑:忽略我对build essentials的评论-,不管怎样,它看起来应该已经构建好了)

这是一个警告,而不是一个错误


我自己刚刚尝试过,它已经构建了一个重命名可执行文件。

这是一个警告,不是错误

我自己刚刚尝试过这个,它已经构建了一个重命名可执行文件。

试试这个:

function rename { from=$1; to=$2; shift 2; for i in "$@"; do j=`echo $i | sed "s/$from/$to/"`; mv "$i" "$j"; done }
将其粘贴到您的.profile或.bashrc中,并像运行Red Hat重命名实用程序一样运行它:

$rename foo bar *.txt
将foo1.txt、foo2.txt和foofoo.txt转换为bar1.txt、bar2.txt,但有点恼人的是,将barfoo.txt转换为bar1.txt
也许有人可以调整它来解决这个问题

将“echo”放在“mv”之前进行测试,这样它就可以输出一个列表,列出它将进行的所有更改,而不必进行更改。

尝试以下方法:

function rename { from=$1; to=$2; shift 2; for i in "$@"; do j=`echo $i | sed "s/$from/$to/"`; mv "$i" "$j"; done }
将其粘贴到您的.profile或.bashrc中,并像运行Red Hat重命名实用程序一样运行它:

$rename foo bar *.txt
将foo1.txt、foo2.txt和foofoo.txt转换为bar1.txt、bar2.txt,但有点恼人的是,将barfoo.txt转换为bar1.txt
也许有人可以调整它来解决这个问题


通过将“echo”放在“mv”之前来测试它,这样它就可以输出一个列表,列出它将进行的所有更改,而不必进行更改。

从linux编译
重命名
。图中的指示存在一些细微差异。我使用了文件中的版本2.22

下载并解压缩它。转到终端中的未压缩文件夹

不要只运行
/configure
,而是将此命令与标志一起使用:

/configure--disable su--disable sulogin--disable login

然后从同一个文件夹中,不更改为杂项,您可以
进行重命名


仅此而已,在当前文件夹中,您将拥有可执行文件,如果需要,还可以在其他工具的man文档中找到它。

从linux编译
重命名
。图中的指示存在一些细微差异。我使用了文件中的版本2.22

下载并解压缩它。转到终端中的未压缩文件夹

不要只运行
/configure
,而是将此命令与标志一起使用:

/configure--disable su--disable sulogin--disable login

然后从同一个文件夹中,不更改为杂项,您可以
进行重命名


仅此而已,在当前文件夹中,您将拥有可执行文件,如果需要,还可以在其他实用程序的man文档中找到它。

使用


使用重命名轻松安装



@科林:我正试图在我的Git repo中更改文件名,这样我就可以使用fileMerge-tool,因为它们无法读取点文件。你应该可以使用mv更改名称。也许我不明白-重命名是在Git脚本中使用的还是什么?@Colin:rename用于轻松重命名不同的文件。用它重命名许多点文件要比用mv容易得多。@Colin:我正试图在Git repo中更改文件名,这样我就可以使用fileMerge-tool,因为它们无法读取点文件。你应该可以用mv更改名称。也许我不明白-重命名是在Git脚本中使用的还是什么?@Colin:rename用于轻松重命名不同的文件。使用它重命名许多点文件要比使用mv容易得多。这与pragraming相关,因为我需要命令才能使用Diff工具。请将问题移至Serverfault.com。这与pragraming相关,因为我需要命令才能使用Diff工具。请将问题移至Serverfault.com。您是如何做到这一点的?我运行失败:./rename File1 Neww,但它不会更改文件名。它工作正常,但您需要阅读手册页:rename包含三个参数。用法示例:%touch testrename%touch testrename2%ls testrename testrename2%../rename test different*%ls differentrename differentrename2%I在尝试使用该命令时所做的操作与您完全相同。你是怎么安装这个应用的?@yangyang:谢谢你的回答!问题在于使用了错误的包装。您的建议适用于util-linux-2.12p。您是如何做到的?我运行失败:./rename File1 Neww,但它不会更改文件名。它工作正常,但您需要阅读手册页:rename包含三个参数。用法示例:%touch testrename%touch testrename2%ls testrename testrename2%../rename test different*%ls differentrename differentrename2%I在尝试使用该命令时所做的操作与您完全相同。你是怎么安装这个应用的?@yangyang:谢谢你的回答!问题在于使用了错误的包装。您的建议适用于util-linux-2.12p。尽管在这里也提到了Red Hat的rename实用程序和zsh解决方案,但als在运行rename foo bar*.txt后具有相同的行为,即foooo.txt->barfoo.txt。因此,如果模拟更好的重命名实用程序是重点,那么这可能不是问题。尽管Red Hat的重命名实用程序和zsh解决方案(也在此处提及)在运行rename foo bar*.txt后,als具有相同的行为,即foooo.txt->barfoo.txt。因此,如果模拟更好的重命名实用程序是重点,那么这也许不是问题。