私は Debian についてしか話せません。 2 つのプログラムの名前は
/usr/bin/rename.ul
util-linux
から パッケージ (したがって、.ul サフィックス)/usr/bin/prename
perl
から パッケージ
実際の rename
コマンドは /etc/alternatives
経由で機能します メカニズム、それによって
/usr/bin/rename
/etc/alternatives/rename
へのシンボリックリンクです/etc/alternatives/rename
/usr/bin/prename
へのシンボリックリンクです
同じ問題が、Red Hat 製品である Cygwin で私を悩ませてきたので、Fedora にもっと似ているはずです。月曜日に会社のラップトップを見てみましょう。そして、Perl-rename が時々そこで機能したことを覚えています。おそらく util-linux
をインストールする前に .
Perl-rename を /usr/local/bin
にインストールした場合 rename
よりも優先されます util-linux
から . /usr/local/share/man/man1/
にインストールした場合のマンページも同様です .
Github で別の Perl-rename パッケージを作成しました:https://github.com/subogero/rename
Python の pip に似た perl リポジトリである cpan を使用してインストールできます。
cpan の使用に関するチュートリアルを次に示します。
rename を実行しようとすると、次のようになります
<ブロック引用>
名前の変更 --help
呼び出し:からファイルに名前を変更します...
perl rename をインストールするには、次のようにします。いくつかの依存関係をインストールする必要があるかもしれませんが、通常は Enter キーを押すだけです
<ブロック引用>
cpan
cpan1> インストール ファイル::名前の変更
CPAN:Storable ロード OK (v2.20)
「/root/.cpan/Metadata」を読みに行く
データベースは 2015 年 9 月 30 日水曜日 08:17:02 GMT に生成されました
モジュール 'File::Rename' のインストールを実行しています
....
ビルド インストールの実行
/usr/local/share/man/man1/rename.1 のインストール
/usr/local/share/perl5/File/Rename.pm のインストール
/usr/local/share/man/man3/File::Rename.3pm のインストール
/usr/local/bin/rename のインストール
/usr/local/lib64/perl5/auto/File/Rename/.packlist の書き込み
RMBARKER/File-Rename-0.20.tar.gz
./ビルド インストール -- OK
これは、cpan から名前変更をインストールする方法です。
次は、システムで動作させることです。複数の名前変更がインストールされている可能性があるため。
which rename
/usr/bin/rename
本当にこれが欲しいとき。
/usr/local/bin/rename --help
Usage:
rename [ -h|-m|-V ] [ -v ] [ -n ] [ -f ] [ -e|-E *perlexpr*]*|*perlexpr*
[ *files* ]
Options:
-v, -verbose
Verbose: print names of files successfully renamed.
-n, -nono
No action: print names of files to be renamed, but don't rename.
-f, -force
Over write: allow existing files to be over-written.
-h, -help
Help: print SYNOPSIS and OPTIONS.
-m, -man
Manual: print manual page.
-V, -version
Version: show version number.
-e Expression: code to act on files name.
May be repeated to build up code (like "perl -e"). If no -e, the
first argument is used as code.
-E Statement: code to act on files name, as -e but terminated by
';'.
/usr/bin/
に入れただけです ただし、古いスクリプトに依存する既存のスクリプト/プログラムを壊さないようにするために、わずかに異なる名前を付けました。
ln -s /usr/local/bin/rename /usr/bin/rename.pl