Кратки съвети

Тук може да намерите полезни съвети и примери за много ситуации.

 

1 2 3 4 5 6

Таблицата dual в Oracle или как да мигрираме Mysql заявки без таблици

Ако сте запознати с Mysql сигурно се е случвало да използвате заявки без таблици от типа на:
 
SELECT 12 * (1 + 10);

 
Но когато мигрирате подобни заявки към Oracle, откривате, че те не са позволени. Решението е да се използва специалната таблица dual:
 
SELECT 12 * (1 + 10) from dual
 
Таблицат dual се създава автоматично. Тя е съставена от една единствена колона dummy. Има само един ред със стойност 'X'. Накратко - доста полезна за такива случаи.

Определяне на мястото, откъдето е зареден даден клас

Докато разработваме Java приложения, включващи много външни библиотеки и jar файлове, понякога се случва даден клас да не се държи според очакваното. Тогава е важно да се знае от къде е зареден то клас, за да може да се определи точната му версия. Например, за да се определи файла, от който е зареден класа StrangeClass, просто трябва да се използва следния израз, оценен в съответната среда за изпълнение:

URL location = StrangeClass.class.getProtectionDomain().getCodeSource().getLocation();

Итериране по файлове с интервал в името в bash


Обикновено, когато трябва да се обходят няколко файла в bash, се ползват подобни конструкции:

for file in /dir/*.c
do
    echo $file
done


или

for file in `find /dir -name *.c`
do
    echo $file
done


И двете посочени не вършат работа, ако някой файл съдържа интервал в името си, например "file with space.c". В този случай се итерират трите части от името на файла - "file", "with" и "space.c", вместо цялото име. За да работим с такива файлове, ползваме нещо подобно:

find /dir -name *.c | while read file
do
    echo $file
done

/dev/null на Windows


Аналогът на файла /dev/null под Windows е файлът NUL. Така че командата
 
./my_prog 2>/dev/null
става съответно
 
my_prog.exe 2>NUL

Заместване на текст във файл на Windows чрез Perl


Замяната на текст във файлове е много удобна функционалност в Perl. Единствената команда
 
perl -p -i -e 's/SEARCH/REPLACE/g' file.txt
е достатъчна, за да се заменят всички SEARCH с REPLACE във файла file.txt. На Windows обаче има една уловка: горната команда не работи с единични кавички. Така че вместо това трябва да се използва
perl -p -i -e "s/SEARCH/REPLACE/g" file.txt


Как да изключваме компютъра с Linux след определено време без инсталиране на допълнителни програми


Ако искате да можете да настройвате компютъра да се изключва след известно време (добре познатата функция "sleep" на телевизора), имате на разположение достатъчно програми за целта. По-долу е показан лесен начин да с енаправи това само с bash и at. Добавете следното в .bashrc файла:
 
sleeper() {
    echo 'init 0' | sudo at now + $1 minutes
}

 
Готово. Сега ако искате компютъра да се загаси след 50 минути:
 
sleeper 50

Използвайте pm-suspend и pm-hibernate вместо init 0 съответно за приспиване и хибернация.

 


Определяне на пълния път до директория в bash и cmd промпт

За да определите абсолютния път до текущата или която и да е относително адресирана директория, например по-горната на текущата, използвайте следните конструкции:

bash

parent_dir=`cd .. && pwd`


cmd

set current_dir=%CD%
cd ..
set parent_dir=%CD%
cd %current_dir%


1 2 3 4 5 6