Вопрос был somedays старый, и я не отправлял его, но это было все еще в моем окне браузера.
Тем временем я развился несколько хакер решение "в лоб". Я перешел к папке где мой mplayer
двоичный файл - и скопировал его в другое имя.
cd /usr/bin
sudo cp mplayer mplfull
Измененный все случаи MPlayer к MPlfull в скопированном файле.
sudo sed -i 's%MPlayer%MPlfull%g' mplfull
Затем я отредактировал мой ~/.xmonad/xmonad.hs
файл (добавляющий мою копию mplayer, которая имеет только MPlfull в его файле, так, чтобы это также было его именем класса).
myManageHook = composeAll
[ className =? "Gimp" --> doFloat
, className =? "Gimp-2.6" --> doFloat
, className =? "Gimp-2.8" --> doFloat
, className =? "Xsane" --> doFloat
, className =? "MPlfull" --> doFloat
, title =? "Gnuplot (window id : 0)" --> doFloat
, resource =? "desktop_window" --> doIgnore
, resource =? "kdesktop" --> doIgnore ]
И затем включил эти четыре строки мой ~/.bashrc
файл.
alias mplfull='mplfull -xineramascreen -2 -geometry 2048x1280+0+0 -fs'
alias mpl100='mplfull -xineramascreen -2 -geometry 2248x1480+-100+-100 -fs'
alias mpl200='mplfull -xineramascreen -2 -geometry 2448x1680+-200+-200 -fs'
alias mpl300='mplfull -xineramascreen -2 -geometry 2648x1880+-300+-300 -fs'
Теперь, когда я ввожу mplayer someFile
Я могу наблюдать его в мозаичном окне. И измените размер его с мышью, как я когда-либо делал.
Но я могу также просмотреть свои файлы с mplfull someFile
и это находится автоматически в полном экране по обоим мониторам (см. -geometry
опция).
mpl100
, mpl200
и mpl300
псевдонимы для видео, которые имели бы большие черные дорожки на моих мониторах из-за соотношения сторон, которое не соответствует к моей двухмониторной установке. Конечно, немного видео затем будет cutted далеко (за пределами экрана), но мне нравится этот больше, чем наличие больших черных дорожек.
Мне все еще любопытно, если существуют лучшие и более легкие решения. Возможно, решение Xmonad?
mpl100
и так далее не нужно. Можно просто использовать mplayer стандартные ключи e
и w
увеличивать масштаб и уменьшать масштаб (названный изменением pan-scan располагаются в mplayer руководстве).
Думаю, я выяснил то, что работает.
Я использовал программу под названием LaunchControl , чтобы создать файл под названием Включить Core Dump.plist
в / Система / Библиотека / Launchdemons
со следующим содержимым:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>GroupName</key>
<string>wheel</string>
<key>InitGroups</key>
<true/>
<key>Label</key>
<string>core dumps launchctl</string>
<key>ProgramArguments</key>
<array>
<string>launchctl</string>
<string>limit</string>
<string>core</string>
<string>unlimited</string>
<string>unlimited</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>UserName</key>
<string>root</string>
</dict>
</plist>
С этими разрешениями:
$ ls -al enable\ core\ dumps.plist
-rw-r--r-- 1 root wheel 582 Dec 30 15:38 enable core dumps.plist
, и это, казалось, сделали трюк:
$ launchctl limit core
core unlimited unlimited
$ ulimit -a core
core file size (blocks, -c) unlimited
...
<output snipped>
...
Я создал небольшую тестовую программу, которая просто падает:
$ ./a.out
Segmentation fault: 11 (core dumped)
и, VOILA, сформирована ядра сброса:
$ # ls -al /cores/
total 895856
drwxrwxr-t@ 3 root admin 102 Dec 30 15:55 .
drwxr-xr-x 31 root wheel 1122 Oct 18 10:32 ..
-r-------- 1 root admin 458678272 Dec 30 15:55 core.426
-121-----45986- Пространства не допускаются вокруг =
!
Итак:
#!/bin/bash
ping -c 20 google.com > results.txt
packetloss=$(awk '/packet loss/{print $6}' results.txt)
echo "$packetloss" >> debug.txt
или даже более короткий:
ping -c 20 google.com |
awk '/packet loss/{sub(/%/, "");print $6 >> "debug.txt"}'
x
; Вы можете распечатать $ 6
напрямую. `используется в подстановке команд старого стиля, например:
foo=`command`
Foo = $ (команда)
вместо этого рекомендуется синтаксис. Обращение с обратной косой чертой внутри $ ()
менее удивительно, а $ ()
легче вводиться.
Проверка http://mywiki.woolegege.org/bashfaq/082
ping -c 20 google.com |
perl -lne '/(\d+)%\s+packet\s+loss/ and print $1' >> debug.txt
#!/usr/bin/perl
my $host=shift or die("Usage $0 host\n");
open(PING , "-|", "ping -c 20 $host") or die;
open(DEBUG, ">>", "debug.txt" ) or die;
while(<PING>){
if(m!(\d+)% packet loss! ){ $Lost=$1 }
if(m!rtt.*= (.+?)/(.+?)/(.+)!){ $Avg=$2 }
}
if ( $Lost > 0 ) { print DEBUG "not ok: lost pcks ($Lost%)\n" }
elsif( $Avg > 5 ) { print DEBUG "not ok: too slow ($Avg)\n" }
else { print DEBUG "ok: ping\n" }