Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Przejscie do katalogu w linuxie

Ostatnio zmodyfikowano 2012-05-12 11:54
Autor Wiadomość
devnull
Temat założony przez niniejszego użytkownika
Przejscie do katalogu w linuxie
» 2012-05-12 09:30:40
Witam. Pisałem programik do instalacji javy i serwera minecraft pod linuxem, jednak natrafiłem na pewny opór gdy dochodziło do tworzenia i przechodzenia do katalogu serwerowego. Sama operacja tworzenia wykonuje się, jednak przechodzenia już nie.

Przykładowy kod wygląda następująco:
C/C++
#include <iostream>
#include <cstdlib>

using namespace std;

int main()
{
    int test;
    cout << "Wpisz 1 by zainicjowac tworzenie i przechodzenie do katalogu" << endl;
    cin >> test;
    if( test == 1 )
    {
        system( "cd /home" );
        system( "mkdir ggggg" );
       
    }
    else if( test == 2 );
   
    {
        cout << "Koniec" << endl;
    }
    cout << "Chcesz przejc do katalogu? 3" << endl;
    cin >> test;
    if( test == 3 )
    {
        system( "cd /home/ggggg" );
    }
    else if( test == 4 )
    {
        cout << "Koniec" << endl;
    }
}

W momencie przechodzenia do katalogu, podaje 3 i nic się nie dzieje, program się kończy. Jest na to jakaś rada? Może jakieś inne polecenie?
P-56518
xevuel
» 2012-05-12 10:41:05
Nie wiem, jak jest na Linuxie, ale na Windowsie wykonanie polecenia
cd ../
 powoduje zmianę katalogu, ale nie powoduje wyświetlenia niczego. Dlatego program się kończy nic nie wyświetlając. Co ty chcesz osiągnąć? Listowanie katalogu, czy coś innego?
P-56523
devnull
Temat założony przez niniejszego użytkownika
» 2012-05-12 11:11:09
Chodzi o przejście do katalogu (czyli zmianę). Ręcznie na linuxie wygląda to tak:

konrad@ubuntu:/home$ cd /home/ggggg
konrad@ubuntu:/home/ggggg$

W ostatniej linijce widać że katalog został zmieniony. Jednak na moim VPS (z prawem root'a) nie przechodzi do katalogu przy wykonywaniu programu (ręcznie wpisując w terminalu przechodzi, ale mnie to nie urządza):

root@ubuntu:/home$ cd /home/ggggg << tą komendę wynonuje program
root@ubuntu:/home$ << nie przechodzi do katalogu, zostaje w home

Kod wygląda teoretycznie dobrze, jednak nie przechodzi do tego katalogu. O co tu chodzi? :(
P-56527
m4tx
» 2012-05-12 11:37:35
Chodzi o to, że program przechodzi do katalogu, ale po wykonaniu automatycznie powraca do poprzedniej ścieżki.

A tak poza tym, po co Ci to przechodzenie do katalogu? Nie możesz po prostu zrobić np.
mkdir /home/gggggg
?
P-56529
devnull
Temat założony przez niniejszego użytkownika
» 2012-05-12 11:40:11
Nie, ponieważ potrzebuję pobrać do niego plik, a nie udaje się to jeśli program nie jest w tym katalogu.
P-56530
xevuel
» 2012-05-12 11:41:14
Ehh... A ścieżki bezwzględne?

Powracając do tematu:
http://www.gidforums.com/t-7414.html
http://www.daniweb.com/software-development/cpp/threads /82942/c-system-function
http://ubuntuforums.org/showthread.php?t=1410630

A wogóle:
Frazy, które należy wpisać w wyszukiwarkę google:
Mi znalezienie tego zajęło 2 minuty...
P-56531
m4tx
» 2012-05-12 11:43:38
@devnull co do pobierania - możesz pobierać do dowolnej ścieżki:
m4tx3@m4tx-EP35-DS4:~$ wget --help | grep output-document
  -O   --output-document=PLIK    zapisuje dokumenty do PLIKu.
P-56532
devnull
Temat założony przez niniejszego użytkownika
» 2012-05-12 11:54:44
Dzięki wielkie. Problem rozwiązany.
P-56533
« 1 »
  Strona 1 z 1