くだらねえ質問はここに書き込め! Part 239
■ このスレッドは過去ログ倉庫に格納されています
まずは2ch-Linux-Beginnersを読みましょう。
いろいろとまとめられているので(・∀・)イイ!!
http://www12.atwiki.jp/linux2ch/
読んでも解決しなかったら、質問を書きこむ前にここを読もう。
http://www12.atwiki.jp/linux2ch/?About
質問に対して答えてもらったら、お礼よりも、結果報告。
過去ログ検索
https://www.google.co.jp/search?&q=site%3A2ch.net%2Ftest%2Fread.cgi%2Flinux%2F+検索語句
https://www.google.co.jp/search?&q=site%3A5ch.net%2Ftest%2Fread.cgi%2Flinux%2F+検索語句
■■■ 「あわしろいくや」と「志賀慶一」に関する必須注意事項 ■■■
・「あわしろいくや」と「志賀慶一」は出入り禁止
・「あわしろいくや」と「志賀慶一」に関する話題は一切禁止
・ついでに翻訳に関する話題も禁止
・志賀慶一Linux機械翻訳事件のまとめサイト: https://www65.atwiki.jp/shiga_keiichi/
・志賀慶一のポータルサイト: https://wikiwiki.jp/baloonfusen/
※前スレ
くだらねえ質問はここに書き込め! Part 238
http://mao.5ch.net/test/read.cgi/linux/1570141862/ >>267
.ありがとうございます。CPUGPUの性能の大凡が知りたかったのでGeekbenchで行けそうです。 すいません、
Windowsで作った、ファイル名が、
2018-1-1-xxx.txt
2018-2-1-xxx.txt
2018-11-2-xxx.txt
とか言うのがいっぱいあって、整理して並べるために、
2018-001-1-xxx.txt
あるいは、
2018-001-01-xxx.txt
と言うように、ゼロをつけたいんですが、、、
手動でやると気がうせてしまうので、、、
なんか良い方法ありませんか? お願いします。 連投すいません、
行頭にゼロをつける方法、
$ rename 's/^/sprintf("%03d-", ++$::t)/e' *.txt
これを、なんか応用すればいいような、、、でんでん、、、 >>269
ファイル名が 2018-数値-数値-xxx.txt だと仮定していいならPowerShellで
> Get-ChildItem | %{ if($_.name -match '2018-(\d+)-(\d+)-xxx.txt'){ $_ | rename-item -whatif -newname ("2018-{0:000}-{1:00}-xxx.txt;" -f [int]$Matches[1], [int]$Matches[2]) }}
WhatIf: 対象 "項目: 2018-1-1-xxx.txt 変更先: 2018-001-01-xxx.txt;" に対して操作 "ファイル名の変更" を実行しています。
WhatIf: 対象 "項目: 2018-11-2-xxx.txt 変更先: 2018-011-02-xxx.txt;" に対して操作 "ファイル名の変更" を実行しています。
WhatIf: 対象 "項目: 2018-2-1-xxx.txt 変更先: 2018-002-01-xxx.txt;" に対して操作 "ファイル名の変更" を実行しています。
問題なければ-whatifを削除したら実際に実行される rename 's/^(\d+)-(\d+)-(\d+)/ sprintf("%04d-%03d-%02d",$1,$2,$3) /e'
でいいだろ。 >>272
ありがとう、遅くなりました。
端末にコピペしたら、
bash: 予期しないトークン `(' 周辺に構文エラーがあります
と言われてしまった。
調べたら、PowerShell ってWindows の端末なんだね。
>>273
Waoooo~~~~!できた!
ありがとう。 LinuxでPowershellなんて使う意味ない 近年、文字コードはUnicodeで統一化が進んでいますが、キーボードのスキャンコードやキーコードはどうなんでしょうか?
どうもこの辺はハードウェア、OS、ターミナル(screenやtmuxなどのターミナルマルチプレクサを含む)、エディタなどの組み合わせによって設定が千差万別のようで、
自分も環境が変わるたびに特殊キーの設定に苦労していてなんとかならんのかなと常々思うんですが ホームディレクトリに.dotbashのディレクトリを作り
一番最初に読むbash_profile以外の.bashrcや.bash_historyを
.dotbashのディレクトリ以下にする設定があれば教えてください。 >>279
ありがとうございます。
zshみたいに
export ZDOTDIR=$HOME/.zsh
出来る機能はないんですね。シンボリックリンクします オススメディストリスレから紹介で来ました、よろしくお願いします
音楽プレーヤーでライブラリ型のカスタマイズしまくれるやつ探してるんですが、
未だにfoobar2000をwineで動かすがベストアンサーでちょっと困ってます
bansheeでも不足です。foobar2000ではよくsearchからgenre HAS Forkとかでプレイリストつくってるので
取り敢えずここら辺が柔軟なやつでないと……
あとGUIソフト限定でお願いします >>281
LinuxのGUIソフトはwinほど多くないからな。
winにソフトに良いのがあって、それがwineで動くならそれでいいんじゃないのか
foobar2000同様なLinuxネーティブのものほしいなら自分で必死に作るか誰かにタダで作ってクレクレだな >>284
プログラミング用語のライブラリではなくて、
Musicディレクトリなんかをスキャンしてデータベースを作って、アーティストとかアルバムで絞り込めるやつがライブラリ型音楽プレイヤー ご紹介いただきました両ソフトとも、少し見てみましたが私の使い方にそれぞれ微妙に合わないようでした……
もうしばらくfoobar使います、ありがとうございましたm(__)m >>269
参考までに、Ruby で作った。
DryRun なので実際には実行されません
require 'fileutils'
# 絶対パスのディレクトリ名の後ろに、* を付けること!
# . で始まる、隠し directory, file を除く
dir_path = "C:/Users/Owner/Documents/test/*"
target_dir = File.dirname( dir_path ) # ディレクトリパスだけを取り出す
# ^ は先頭から、+ は1文字以上。[^-] は- 以外の文字。\d は数字。( ) はキャプチャー
re = /^([^-]+)-(\d+)-(\d+)/
Dir.glob( dir_path )
.select { |full_path| File.file?( full_path ) } # ファイルのみ
.each do |full_path|
new_filename = File.basename( full_path ).sub( re ) { # ファイル名を置換する
"#{ $1 }-#{ "%03d" % $2 }-#{ "%02d" % $3 }" } # format で、0埋め、N桁表示にする
dest_path = target_dir + "/" + new_filename
FileUtils::DryRun.move( full_path, dest_path )
end PowerShell 君と Ruby 君の揃い踏みか… Linux板にワッチョイ導入できないですか?
嵐がウザくて困ります。 実際訴えても導入しない板があって困ってたりする
なんで無駄骨覚悟で運営に凸り続けるしかないかな zorin os を使い始めました
とあるアプリを入れようとしたらエラーが出て、色々検索している内に
dpkg --configure -a というのをやっておくのがいいというのを見まして
やってみたところ、幾つかの依存関係の問題が出たのですが
apt-get -f install で大方の物は設定待ちの状態までいけました
ですが、以下の表示が出て systemd-sysv というやつだけ
ずっと再インストールが終わりません
----
dpkg: アーカイブ /var/cache/apt/archives/systemd-sysv_237-3ubuntu10.39_amd64.deb の処理中にエラーが発生しました (--unpack):
(おそらく) 新しい情報ファイル `/var/lib/dpkg/tmp.ci/postinst' をインストールできません: 構造体を内容消去する必要があります
処理中にエラーが発生しました:
/var/cache/apt/archives/systemd-sysv_237-3ubuntu10.39_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
----
一体どうしたらいいのでしょうか? 自分が何をしたかわかってるなら別だけど依存関係壊れたらおとなしくOS再インストール とあるアプリって時点で論外だわなw それまでの作業内容も書いていないし $ sudo smartctl -a /dev/ssdのデバイス
s.m.a.r.tの情報欄に
=== START OF SMART DATA SECTION ===
Read NVMe SMART/Health Information failed: NVMe Status 0x4002
って書いてあるんですけどこれはSSDがs.m.a.r.t非対応ということでしょうか? >>306
いやsmartctlがそのSSDに対応していないってことだと思う そういうことなんですか!
故障を予測できないので困りましたね!
HDD追加したいと思います すいません、
ターミナルでbashを利用してるのですが、
コマンドを途中まで入力してからタブキーを謳歌すると
候補が一覧表示されます。
この候補一覧をファイルに保存したいのですが
マウスでコピペするのが面倒なのでコマンドで取得する方法ありませんか? >>309
bash - How does TAB auto-complete find options to complete? - Unix & Linux Stack Exchange
https://unix.stackexchange.com/questions/12356/how-does-tab-auto-complete-find-options-to-complete
ここらへんの仕組みで動いてるからここに出てくるパスを探してみな >>309
$ compgen -c bas
basename
bashbug
basenc
base32
base64
bash
basename
$ # systemctl ena<tab> -> # systemctl enable
この補完は、なんのパッケージをインストールすればよいのでしょうか。
CentOS7(1908)を、最小限のインストールで行ったところ、
上記のタブ補完が効きませんでした。
よろしくお願いします。 >>312
bashかな?
bash-completion compgenでできました
ありがとうございます
便利ですね
bash-language-serverもこれ使ってるのかな >>313
bashでした。bash-completionでびっちりでした。
ありがとうございます。 >>277
USB usageで規格化されとるやん SSDを使っていて書き込みを減らしたいんですけど
すべての書き込みをキャッシュしてまとめて書き込むように出来ませんか?
vm.dirty関係はいじってみたんですけどアプリの設定ファイルなど一部のファイルはキャッシュされずに直接書き込まれてしまうのです windowsのメールソフトでnpopq(300k以下)があるけど
LinuxのCUI以外で一番軽いGUIメーラーはありませんか?
送受信の不具合を確かめたいです。 300k以下ってなんのことだ
とりあえずSylpheedはよく挙げられる >>319
実行ファイルの容量です。Sylpheedを試してみます。他にもあれば教えてください。
(さっき自分で見つけたEvolutionも) >>320
軽いって話を見たことがあるのはClaws Mail,Geary,Trojita,Balsaあたり
Sylpheedしか使ったことないから実際は知らない LinuxサーバーにWineをインストールして、Windowsアプリを動かすことって出来ますか? >>323
ええ〜、どっちですかね?
♪と楽しげな感じだから出来るでいいのかな >>320
Interlink Mail & News というのがある旧FossaMail
どれよりも軽い 言語ファイルがないが特に問題ない 誘導されてやってましりました
よろしくお願い致します
質問させてください
今までWindows10でミュージックプレーヤーを構築していました(foobar、flac+cue)
cueファイルをfoobarに表示させるとまずいので隠しファイルに設定していました
今回raspberrypi+openmediavaultでNASを組み、音楽ファイルはそちらへ移動したところ隠しファイル属性が全て無効化されて
foobarに表示されるようになってしまいました
Windowsから隠しファイルへと再設定しましたができませんでした
今までの様にNAS内のファイルを隠しファイルとして設定する方法はありますでしょうか?
openmediavaultの中の設定でドットから始まるファイルを表示するor市内の設定ではしないにしていますが上記の状況でございます
お力をお貸しくださいませ
よろしくお願い致します >>328
自分の鯖ではsambaで共有してWindowsからフォルダ作って隠しファイル設定したらちゃんと隠しファイルになったのでそのOS側で別の処理してる気がする
↓
【旧FreeNAS】 OpenMediaVault Part1 【Linux】
http://mao.5ch.net/test/read.cgi/mysv/1266730631/ >>329
そうですか
OMVでは隠しファイルを表示しない設定しているはずなのですが
もう一度見直してみます
また躓きましたらご誘導先にてそうだんさせていただきます
ありがとうございます 新しく追加したHDDをフォーマットしてマウントしたのですが
root権限がないと書き込みができないのです
これってHDDが壊れているからでしょうか? >>331
使ってるユーザーがマウントしたフォルダに書き込む権限ないのでは gnome-disks以外のツールでフォーマットするとアクセス権を取得できないんだっけか。
>>331
GNOME使ってるならgnome-disksでフォーマットし直し。
GNOME以外ならchmodコマンドかchownコマンドでマウントしたディレクトリのアクセス権を変更。 flavourは関係なくsudo apt install gnome-disk-utility で逝ける
まだ書き込みしてないなら尚更これでやるべき マウスボタンにShift/Ctrl/Alt/Superなどを単体で割り当てる方法ってありますか?
マウスボタン+左/右ドラッグと片手でウィンドウの移動/リサイズしたり
左手キーボード、右手マウスの作業中にキーボード側では押しにくいショートカットを
マウス側で補助したいです >>291
269です、ありがとうございます。
273さんから、これを教えて頂いた。
rename 's/^(\d+)-(\d+)-(\d+)/ sprintf("%04d-%03d-%02d",$1,$2,$3) /e'
-(\d+) や、%03d が何を意味するのかさっぱりで、、、
こう云うのはどこで勉強すればよいの ?
なにか良い本や、サイトが有ればおしえて下さい。 名前を変換したいファイルを正規表現で表すと
[a-zA-Z]+.txt
これをYMDのところに年月日を入れて以下のように名前を変換したいです。
[a-zA-Z]+_YMD.txt
1つのディレクトリにファイルが3000個あります。
その中には条件に合わないファイル名のものもあり、
それらにはなにもしたくないです。
さくっと名前変更できる神技コマンドを教えてください。 MINTが小さいLinuxのなかで人気があると聞いて少し調べたら、
それでもインスト容量が15GB以上
というのを見かけたけど本当??
LIVEDVDでも動くのなら空き5GBじゃ駄目なのかと
8GBのSSDが出てきたので、これが使えればすぐ出来るのですが。
意外に容量を食うのが当たり前になったんでしょうか? >>341
インストール直後で7GBほどだったと思う多分
いらないソフト削除でlibre officetとかヘルプ消せば5GB
さらに頑張って色々消せば4GBまあギリじゃないかな わざわざ8GBのディスクを使ったりせずに、数千円で128か250GBくらいのSSD買って使うのが良い。
それなら、どのディストリでも使えるw >>337
rename の使い方という意味なら、Perl の勉強をしてくださいということになります。
rename が解釈してるのではなく単に Perl コードとして実行してるだけですから。 renameコマンドはELFバイナリだが、実はperlスクリプトということ? >>344
ほんそれ
インストールするだけが目的なのかね?と思ってしまうわ >>341
システム要件は公式リリースアナウンスに書いてあるが。
まともな情報をもとにしたほうが早くて正確だよ。 >>346
renameと名のつくコマンドは複数あり、Debian系ではperlスクリプトとなっている。
redhat系だとバイナリの別のコマンドじゃあなかったかな それは util-linux 版だね。引数が違うからその rename の話じゃない。
Perl 版は最初から Perl スクリプト以外の何物でもない。
Larry Wall 氏のサンプルコードを元に 1997 年に Robin Barker 氏が書き、
その後 Robin Barker 氏はファイルのリネームのためのモジュールを書いて
現在の rename はそのモジュールの関数を呼ぶようになっている…らしい。 >>349
Debianはバイナリがデフォだよ
util-linuxが必須パッケージになってる シェルスクリプトでwhileループをバックグラウンドにするやり方ありませんか?
shは
while true
do
echo hoge
done &
だけでできましたが
cshの場合だと同じようにやっても最後のendだけがバックグラウンドになって
ループ一回で終わってしまいます
サブシェル化しようとしてもwhileとendは単独行にしか書けないようで
()で括れません
どうやれますか? ・csh/tcshでのシェルスクリプトは*まったく推奨しません*
参考 http://www.speech-lab.org/~hiroki/csh-whynot.euc 「 ̄ `ヽ、 ______
L -‐ '´  ̄ `ヽ- 、 〉
/ ヽ\ /
// / / ヽヽ ヽ〈
ヽ、レ! { ム-t ハ li 、 i i }ト、
ハN | lヽ八l ヽjハVヽ、i j/ l !
/ハ. l ヽk== , r= 、ノルl lL」
ヽN、ハ l ┌‐┐ ゙l ノl l
ヽトjヽ、 ヽ_ノ ノ//レ′
r777777777tノ` ー r ´フ/′
j´ニゝ l|ヽ _/`\
〈 ‐ 知ってるが lト、 / 〃ゝ、
〈、ネ.. .lF V=="/ イl.
ト |お前の態度が とニヽ二/ l
ヽ.|l 〈ー- ! `ヽ. l
|l気に入らない lトニ、_ノ ヾ、!
|l__________l| \ ソ >>352
関数にでもすりゃいいんじゃね?
知らんけど >>351
Debianではutil-linuxのrenameコマンドはrename.ulになってない?
alternativesも設定されてないような grep してみたらこうなった。
$ pwd
/var/lib/dpkg/info
$ grep 'bin/.*rename' *.list
perl.list:/usr/bin/prename
rename.list:/usr/bin/file-rename
util-linux.list:/usr/bin/rename.ul
$
file-rename が File::Rename を使うバージョンで
prename が使わないバージョンのようだ。
ちなみに stretch の場合だ。buster でどうなってるかは知らん。 >>358-359
たしかにそうみたいだね
少し前にbusterに上げたんだけど
その時にperl版renameを使ったファイラのマクロが動かなくなったのよ
util-linuxの方が使われちゃってるのかとperl版を入れて解決したんだけど
renameコマンド自体が無かったから動かなかったんだろね
ごめんね >>352
よく知らないけど、関数とか別ファイルにして、バックグラウンドで起動すれば? >>337
Ruby を学ぶとよい
\d+ は、正規表現で、\d は数字、+ は前の文字を1つ以上使う(最長一致で)。
つまり、123x なら、123 を取れる
%04d は、sprintf の書式指定文字。
0 は桁数未満の時に0埋めする、4は4桁、d は整数。
123 なら、0123 になる
sprintf フォーマット
https://docs.ruby-lang.org/ja/latest/doc/print_format.html >>339
Ruby で作った。ただし、DryRun なので実際には実行されません
正規表現は、先頭^・末尾$ と、. をエスケープするので、\. となる。
^([a-zA-Z]+)\.txt$
日付は、%Y%m%d そのファイルの最終更新日、20190101 などの、4-2-2桁表示か?
aBc.txt → aBc_20190101.txt
require 'fileutils'
# 絶対パスのディレクトリ名の後ろに、*.txt を付けること!
# . で始まる、隠し directory, file を除く
glob_pattern = "C:/Users/Owner/Documents/test/*.txt"
target_dir = File.dirname( glob_pattern ) # ディレクトリパスだけを取り出す
re = /^([a-zA-Z]+)\.txt$/
Dir.glob( glob_pattern )
.select { |full_path| File.file?( full_path ) } # ファイルのみ
.each do |full_path|
File.basename( full_path ).match( re ) do |matched| # ファイル名がマッチしたもの
fs = File.stat full_path
date_str = fs.mtime.strftime "%Y%m%d" # 最終更新日 20190101 4-2-2桁
new_filename = "#{ $1 }_#{ date_str }.txt" # $1 は、capture 部分
dest_path = target_dir + "/" + new_filename
FileUtils::DryRun.move( full_path, dest_path )
end
end Ruby効率悪すぎでしょ
そんな何行もかからんでしょ..
for x in $(ls | grep -E "^[a-zA-Z].txt"); do echo $x ${x/.txt/_$(date +%Y-%m-%d).txt}; done 作りかけか。echoをmvにするのか。毎回dateは効率悪すぎでしょ。 日付は、%Y%m%d は、20190101 などの、4-2-2桁表示か?
今日の日付ではなく、そのファイルの最終更新日と解釈した!
aBc.txt → aBc_20190101.txt >>364
>^[a-zA-Z].txt
正規表現は、先頭^・末尾$ と、. をエスケープするので、\. と解釈した!
^([a-zA-Z]+)\.txt$ ■ このスレッドは過去ログ倉庫に格納されています