- 1
for(__=_;__<___;__++) C++;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
Всего: 20
+67.7
for(__=_;__<___;__++) C++;
Недавно увидел такие имена переменных, очарован, теперь срочно переделываю весь проект!
PS. Тело цикла сами знаете для кого.
+141.8
proc redraw_level {level val} {
global lnames countries towns provinces sublocations positions
set parent [expr $level - 1]
set pvalue [.f$parent.l get [lindex $positions $parent]]
set curlist [lindex $lnames $level]($pvalue)
if {$val!=""} {lappend $curlist $val}
.f$level.l delete 2 end
eval set list_vals $$curlist
eval .f$level.l insert end $list_vals
}
Поскольку начал писать на TCL пару дней назад, ну просто не знаю, как изящно сделать. Опять на DCL смахивает...
+130
for INPUTFILE in `ls ${_BUILD_DIR}/db/full/migrate[0-9].sql`; do
STAGE=`basename $INPUTFILE | awk -F "" '{print $8}'`
Я видел много, но чтобы ТАК получали символ из строки...
awk - поистине многофункциональный язык!
−121.2
varcmd()
{
eval $(echo $*|tr -d "./;")
}
varcmd test '$'$fn$oldrev
if [ $? -eq 0 ]; then
varcmd $fn$rev='$'$fn$oldrev
varcmd unset $fn$oldrev
else
varcmd $fn$rev=$oldrev
fi
Хитрокод: ассоциативные массивы. Потом я подумал и переписал через более изящные файлы:)
Количеству долларов в тексте позавидует DCL!
+124.3
[ $(echo $a|cut -c$((${#a}-1))-) = "gz" ] && echo "Hello, world!"
[ $(echo $a|sed "s/.*\(..\)/\1/") = "gz" ] && echo "Hello, world!"
echo $a|sed -e"s/.*gz$/Hello, world\!/" -et -eD
expr $a : .*gz >/dev/null && echo "Hello, world!"
[ $(expr $a : '.*\(..\)') = "gz" ] && echo "Hello, world!"
echo "ifelse(substr($a,eval(len($a)-2)),gz,\`Hello, world! ')"|m4
case $a in *gz) echo "Hello, world!";; esac
echo $a|emacs -batch -eval '(defun f (arg) "M") (if (string= (substring arg -2) "gz") (princ "Hello, world!\n")) )' -f f
2168-му посвящается...
Задача: Если последние два символа переменной "gz", то вывести "Hello, world!".
Решение проблемы от поклонников разных инструментов. awk, perl и всякие tcl не писал, поскольку там не будет говнокода.
11 строка, то, как обычно пишу я. ИЧСХ, все примеры, кроме последнего, строго соответствуют POSIX.2:)
+127.8
_BUILD_FORMAT=`echo ${_FILE_NAME} | awk -F'.' '{ if($5=="gz")printf("%s",1);else printf("%s",2)}'`
Имя файла имеет вид: xxx.version.src.tar.gz
Эта проверка на то, какое расширение (и, соответственно, версия того, что внутри. О методе per se не буду, потому что нецензурно). Все бы ничего, пока имя файла не попадает, скажем, ./xxx.version.src.tar.gz
+131.9
np_char=`awk '{
for(i=1;i<=length($0);i+=1){
symb=substr($0,i,1);
if (symb < " ")
{
print symb;
exit 9;
}
}}' $1`
hex_code=`echo "$np_char" | hexdump -n 1 -e '1/1 "%X" "\n"'`
Поиск и вывод непечатных символов в файле...
Это я еще молчу об этической стороне hexdump.
+136.2
switch( 1 )
{
default :
TO_STR( 2, "10" );
}
Интересно, откуда и зачем такая конструкция. Может, кто-то что-то подобное встречал?
+138.5
awk '{i=i+1;if(i==2){print($3);}}' 2>/dev/null | awk -F. '{printf $1$2$3}'
Продолжаю посылать приколы нашего городка.
Кстати, предложение к разработчикам ресурса: ввести "язык" POSIX.2, или, скажем, "язык командной строки UNIX". Куда пойдут все конвееры с sed, awk, join, cut, группировками, подпроцессами, асинхронностью и прочим. Они порой доставляют!
Не пихать же это все в bash!
−370.1
id |sed "s/^[^(]*(\([^)]*\)).*/\1/"
Воссоздал прямо щас, не ручаюсь, что выражение в точности такое, но очень близко.